2013-02-20 52 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

相关问题