我开始学习使用git,我遇到的情况我不理解(存储库是从svn中取出的)
我在一个分支jacob@379
上承诺所有事情:
host$ git status
# On branch jacob@379
nothing to commit (working directory clean)
尝试与主人合并:
host:$ git merge master
Already up-to-date.
这令人困惑,因为差异说有差异!
host$ git diff master..jacob@379
warning: refname 'jacob@379' is ambiguous.
diff --git a/.classpath b/.classpath
index 8ba1225..5af1151 100644
--- a/.classpath
+++ b/.classpath
@@ -10,6 +10,11 @@
....
发生了什么事?
答案 0 :(得分:3)
可能没有什么新东西可以合并,但你的分支机构的变化不在主机上。这些差异也会反映在提交中,因此您可以执行的简单检查是检查日志:
# See what's in my branch but not master
git log master..jacob@379
# See what's in master but not my branch
git log jacob@379..master
我猜你会在那里看到一些提交。想象一下:
o---o---A---B---C master \ \ ----D---E---F jacob@379
在这种情况下,没有什么新内容可以合并到jacob@379
中,但这两个分支仍然非常明显不同。
快速查看gitk --all
可能会非常有用。
答案 1 :(得分:1)
我认为问题在于:
warning: refname 'jacob@379' is ambiguous.
尝试使用HEAD代替jacob @ 379
但是,仍然可能得到一个明确的分支名称。我认为@具有特殊含义。或者你有一个同名的标签或其他参考?
此外,弹出一个图形程序非常棒,该程序会显示所有标签和分支以及所有带有线条的分支。如果你有,请尝试:gitk --all