2010-10-11 55 views
9

我在备份服务器上使用裸Git存储库,并在本地执行'git commit'后用'git push'推送本地更改。git:为什么我在'git push'后用X提交原始/主文件?

“git的状态”告诉我

# On branch master 
# Your branch is ahead of 'origin/master' by X commits. 

如果我修改一个文件,然后执行另一个提交之后一推,git的告诉我,我的分支是由提前X + 1个提交。 'git remote show origin'显示我的提取和拉取URL与我提供的参数相同。

我已验证我的更改确实被推送到服务器存储库(通过拉入不同的位置并检查内容)。

我在这里做错了什么? PS:我知道在这里有几个相关的问题,但我找不到在任何这些问题中我的具体问题的答案。如果我在这方面有错,请指出正确的方向。

+0

我没有回答你,但我想让你知道你并不孤单!我有时会看到这个消息,如果我做了推/拉,即使似乎没有任何东西被转移,这也会消失。 – 2010-10-11 14:20:45

+3

你试过在推后运行'git fetch origin'吗?也许在推送后远程分支不会被更新。 – 2010-10-11 14:45:56

+0

@弗朗索瓦,确实和推送一样,它是重要的参考名称(为了更新它)。 – Bruno 2010-10-11 15:11:42

回答

6

这听起来像是你直接推送到URL。尝试git push origin,这将更新origin的引用(原则上,您可以使用相同的引用名称两次具有相同的URL:消息引用引用名称)。

+0

谢谢你,照顾它! – Eyvind 2010-10-11 18:22:44

1

有时你会遇到这个,即使你实际上没有本地提交。如果你坚持,和

git pull origin [branch] 

不帮你,只是一味

git pull origin and git pull 

这些命令应该设置你的回购直和清理的暂时领先起源/主的您的问题通过X提交。

0

我发现更新“origin”的跟踪信息也适用。

尝试:

git fetch origin 
相关问题