后提交的混帐令我一直在试图为下面的文章中所描述的分支模型: http://nvie.com/posts/a-successful-git-branching-model/合并分公司
- 我做一个从主项新的分支,在那里 做了几次提交
- 回到分支主,并提出了一个提交
git merge --no-ff
分支项目,然后解决任何合并冲突
我认为所有来自另一个分支的合并提交将按顺序合并在一起,但似乎并非如此。以下是git log
输出:
f28e150 Merge branch 'items'
8281666 [Master] Another middle commit before merge
73d0ca9 [items] commit 2
0442978 [items] commit 1
为什么主分支之前的项目分支显示的第一个两次提交?在合并提交下将它们展示在一起是不是更有意义,因为那时我将它与我的代码合并在一起?
调用图形选项:git log --graph
它显示在正确的顺序
* f28e150 Merge branch 'items'
|\
| * 73d0ca9 [items] commit 2
| * 0442978 [items] commit 1
* | 8281666 [Master] Another middle commit before merge
|/
我想他们在一起的原因是为了让我更容易撤消整个合并
感谢您的澄清。然而,当你对过去的x次提交进行git reset时,将使用哪个命令? –
'git reset'命令本身不使用这种编号系统。然而,'gitrevisions' *确实允许'〜n'(例如'HEAD_5')。这遵循*父链接*,特别是*第一父*链接。这不是一个'git reset'的东西,而是一个通用的“命名特定的关系提交”的东西,你可以使用例如'git show'来查看那个特定的提交。 https://www.kernel.org/pub/software/scm/git/docs/gitrevisions.html中有(许多)更多详细信息。 –
torek