Git-您的分支机构领先5%
在我的git repo中,除了Git-您的分支机构领先5%,git,Git,在我的git repo中,除了master之外,还有两个分支nyteam和cfteam 切换到nyteam分支 提交一些更改并推送到origin/nyteam (到目前为止,只推送了一次提交) 切换到cfteam git status Your branch is up-to-date with 'origin/cfteam' git pull origin nyteam git status Your branch is ahead of 'origin/cfteam' by 5 comm
master
之外,还有两个分支nyteam
和cfteam
切换到nyteam
分支
提交一些更改并推送到origin/nyteam
(到目前为止,只推送了一次提交)
切换到cfteam
git status
Your branch is up-to-date with 'origin/cfteam'
git pull origin nyteam
git status
Your branch is ahead of 'origin/cfteam' by 5 commits.
现在的问题是,其他四项承诺从何而来,而这实际上不是我所做的
有人能解释这种情况吗?这两个分支在过去的某一点上出现了分歧。对nyteam的更改由四个提交表示。当您从cfteam拉入nyteam时,它将新的更改合并到前四次提交所达到的状态。第五个节点是合并,之前的四个节点是分支中的更改。您之所以“领先”,是因为您将cfteam作为nyteam跟踪的来源 现在的问题是,其他四项承诺从何而来,而这实际上不是我所做的 要查看历史记录,请执行以下操作:
git log --oneline --decorate --graph
它将向您显示分支所指向的提交
其他四个提交来自哪里? 执行时:
git pull origin nyteam
nyteam
向当前分支添加了4个提交,即cfteam
,因此现在您有了来自合并分支的新提交
下面是一个类似的示例:
谢谢你的回答。但当我创建这个新分支时,我是cfteam的一员。因此,我猜
nyteam
应该与cfteam在开始时类似。然后我做了一个承诺。其他四项承诺的可能性是什么?谢谢你的回答。git日志--oneline--decoration--graph给出了下面的响应a249689(HEAD->cfteam,origin/nyteam,nyteam)
这意味着指向同一提交的3个分支。都是。签出origin/cfteam分支(您将处于分离头中),并查看其指向哪个提交git checkout origin/cfteam
我在origin/cfteam中,我没有看到五次提交。这是否意味着origin/cfteam没有这些提交,但cfteam有?没错。既然你在本地拥有它,但你没有推动它,你现在有更好的理解了吗?
git log after the merge (pull = fetch + merge)