我正在与一位开发人员合作,他遇到了一个我以前从未遇到过的奇怪问题。他正在开发一个存储库,需要先从其他人那里获取最新的更改,然后才能推送。他所有的改变都被承诺了。
$ git pull
Cannot pull with rebase: You have unstaged changes.
Please commit or stash them.
这似乎很合理,直到......
$ git status
# On branch master
# Your branch and 'origin/master' have diverged,
# and have 3 and 1 different commit each, respectively.
#
nothing to commit (working directory clean)
说什么?
我试过了git reset --hard HEAD
之前拉,但拉仍然失败。
只有一个人看到了这一点,而且他使用的是 Mac (OSX 10.6.8)。有任何想法吗?我正准备把头发拔掉。
代替
git pull
try
git fetch
git rebase -p origin/master
如果这不起作用,你可以尝试
git pull --no-rebase
如何检查出现此消息的原因
确保你站在树枝上,而不是一个独立的头。变基不适用于分离的磁头。
运行以下命令,结果应该是没有输出。
git update-index -q --ignore-submodules --refresh
git diff-files --ignore-submodules
git diff-index --cached --ignore-submodules HEAD --
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)