Git:为什么我的历史记录中只有1次合并才显示?

时间:2015-05-19 11:10:14

标签: git version-control merge branch branching-and-merging

以下是git log --pretty=%h --graph的提交历史记录(提交顺序自下而上)

* 81e1852 <- I have merged back in twice to get to this
* b6cb648
* 3ef6e0b
* a1f56c5
* a35a50a
* 47b2058 <- I have made a couple of branches since here
* 43c1912
*   19d189f <- Here I merged back in
|\
| * 837998b
| * 30c0a6c
| * e667ee8
| * f41ccfa
* | 54bd96c <- Here I branched off
|/
* 407af14
* 7951cdf
* a8db147 <- This was my first commit

正如你所看到的,在我的初始提交之后进行了一些提交,我进行了分支,进行了一些更改,然后合并回来。然后我提交了两次完全相同的事情,因为提交19d189f但这没有反映在历史。

显然,我必须做些不同的事情,你知道那可能是什么吗?我还没有重新定位,我还在学习Git,而且我还没有尝试过。当我合并19d189f时,我可能必须解决一些冲突,这可能就是为什么这个分支出现在我的历史中但是其他人不这样做?另请注意,我目前除了主人之外没有其他分支机构,而且我完全在本地工作。

由于

1 个答案:

答案 0 :(得分:1)

* | 54bd96c 

这是您在主分支和功能分支中同时提交的唯一时间。使用通常的合并,导致此提交:

*   19d189f <- Here I merged back in

在所有其他情况下,您合并了一个分支,自分支点以来没有对master进行提交。使用快进合并,但不会创建合并提交。所以图中没有任何内容。

另请参阅Why does git fast-forward merges by default?