Ошибки слияния GitHub c push –force

Часто при отправке изменений из локального репозитория на сервер git возникают ошибки слияния.

Так как я, в основном, работаю один и использую github для бэкапов, то у меня эта ошибка возникает, когда я делал push с одного компьютера (например с домашнего), а потом через какое-то время скачал с хостинга файлы на другом компьютере (например на рабочем), изменил их и пытаюсь отправить более свежую версию на сервер git.

В терминале я вижу следующую ошибку:

! [rejected]        master -> master (fetch first)
error: failed to push some refs to 'https://github.com/...'
hint: Updates were rejected because the remote contains work that you do
hint: not have locally. This is usually caused by another repository pushing
hint: to the same ref. You may want to first integrate the remote changes
hint: (e.g., 'git pull ...') before pushing again.
hint: See the 'Note about fast-forwards' in 'git push --help' for details.

В моем случае, когда у меня точно единственная верная версия файлов лежит в локальном репозитории, я использую команду --force (-f), которая просто игнорирует эту ошибку и отправляет файлы на сервер.

В общем случае так делать не стоит, так как это может привести в последующем к критическим ошибкам.

Перейти к верхней панели