Первый Git Push отклонен - PullRequest
       12

Первый Git Push отклонен

0 голосов
/ 25 августа 2018

Когда я набираю git push origin master, из git отображается следующее сообщение об ошибке:

To https://github.com/farrasdoko/RumahSakit.git
 ! [rejected]        master -> master (non-fast-forward)
error: failed to push some refs to 'https://github.com/farrasdoko/RumahSakit.git'
hint: Updates were rejected because the tip of your current branch is behind
hint: its remote counterpart. Integrate the remote changes (e.g.
hint: 'git pull ...') before pushing again.
hint: See the 'Note about fast-forwards' in 'git push --help' for details.

Затем, я набираю git fetch origin, git merge origin master & git pull origin master, из git показывается следующее сообщение об ошибке:

From https://github.com/farrasdoko/RumahSakit
 * branch            master     -> FETCH_HEAD
fatal: refusing to merge unrelated histories

Как его подтолкнуть ??

Ответы [ 2 ]

0 голосов
/ 25 августа 2018

hint: Updates were rejected because the tip of your current branch is behind

Часто, когда это происходит, вам действительно нужно добавить дополнительные коммиты в origin/master в вашу ветку до ваших собственных коммитов. Вы можете использовать команду rebase , чтобы сделать это:

git rebase origin/master

Это перетянет новые коммиты из origin в вашу ветку, а затем добавит ваши собственные новые коммиты сверху, чтобы ваши коммиты были последними. При перебазировании вы можете столкнуться с некоторыми конфликтами. Когда это произойдет, git остановится и скажет вам разрешить конфликты; после этого вы должны git add затронутые файлы, а затем git rebase --continue. Или, если вы решите, что не знаете, как решить проблему, вы можете git rebase --abort, и ваша ветвь вернется в то же состояние, в котором она находилась до запуска команды git rebase.

git rebase - мощная команда, которая может быстро испортить вашу ветку, поэтому будьте осторожны с этим, но не бойтесь этого. Применяются стандартные компьютерные рекомендации: сделайте резервную копию своей работы, прежде чем что-то делать, если вы не уверены. К счастью, легко создать новую ветку в качестве резервной копии (git checkout -b my_backup_branch) и затем переключиться обратно на рабочую ветку.

0 голосов
/ 25 августа 2018

Два подхода. Я предполагаю, что вы уже проверены, чтобы освоить.

1

git merge origin/master --allow-unrelated-histories

Разрешите конфликт, затем

git add -A .
git commit -m "Commit message"
git push origin master

OR
2.

git pull -f origin master     //The -f flag stands for force
...