Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/git/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Git-您的分支机构领先5%_Git - Fatal编程技术网

Git-您的分支机构领先5%

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

在我的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 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)