2013-02-20 79 views
0

我在沒有分支,目前誰推流,爲什麼當我做爲什麼我在git中遇到非快進錯誤?

git push 

我得到的唯一的人:

! [rejected]  master -> master (non-fast-forward) 
error: failed to push some refs to 'https://github.com/dsak.git' 
To prevent you from losing history, non-fast-forward updates were rejected 
Merge the remote changes (e.g. 'git pull') before pushing again. See the 
'Note about fast-forwards' section of 'git push --help' for details. 

執行後git pullgit push作品就好了。

回答

1

沒有有沒有承諾不存在本地遙控器上,但反之則是正確的我添加的文件不屬於遠程到本地

您可能具有相同的提交,但SHA1必定有所不同。
如果您在任何時候對主人進行了重新綁定(包括rebase -interactive,只是在master本身內重新排序或放棄某些提交),就可能發生這種情況。

當你有一個conflicting tag(但我不認爲它在這裏適用)時,當有相同的提交(甚至相同的SHA1)時可以彈出錯誤消息的唯一的其他情況。

2

執行git pull後,git push工作得很好。

顯然在您的本地倉庫中不存在一些遠程倉庫的提交。如果您在某些時候使用了git reset,修改或以其他方式更改了現有的提交(如果情況如此,git pull應該給您發出警告),或者如果您從另一個回購(例如另一個回購電腦)。

+0

無有不承諾,不存在本地遙控器上,但反之則是正確的我添加的文件不屬於遠程到本地 – 0x90 2013-02-20 06:40:48

+0

@ 0×90:如果你只是你不會得到這個錯誤添加提交到您的本地回購,這是遠程主分支內容的直接後裔。您的本地回購中至少有一些提交與遙控器上的提交不同。 – mipadi 2013-02-20 19:05:11

相關問題