我不明白为什么我的合并更新一个提交...它看起来它更新提交添加颜色,而不是合并主硬币。当我尝试合并这些分支时,Sublime不会弹出。 任何人都可以帮助我?此外,当我输入git commit我有:Git,合并分支git
在分支主 你的分支提前2'提交'原产地/主'。 (使用“混帐推”发布您的本地提交) 没有提交,工作树干净
我不明白为什么我的合并更新一个提交...它看起来它更新提交添加颜色,而不是合并主硬币。当我尝试合并这些分支时,Sublime不会弹出。 任何人都可以帮助我?此外,当我输入git commit我有:Git,合并分支git
在分支主 你的分支提前2'提交'原产地/主'。 (使用“混帐推”发布您的本地提交) 没有提交,工作树干净
我不知道你的问题是什么,但认为有两件事情会在这里,你可能不完全理解。
首先,我不认为git merge master coins
做你认为它的作用。
git merge master coins
不说合并master
为coins
。它说要将master
和coins
合并到当前签出的分支中。这是因为master coins
是合并到当前分支的分支列表。 From the docs ...
[混帐合并]集成(因为他们的历史,从当前分支发散的时间)到当前分支从命名提交的变化。
如果master
被检出,则它将硬币合并到主。如果coins
被检出,则它将master
合并成coins
。如果有其他东西被检出,你会得到所谓的“章鱼合并”,并且所有三个,master
,coins
和当前分支合并在一起,可能是一团糟。
现在,您与master
合并,因此git merge master coins
与git merge coins
相同。你把coins
合并为master
,我认为这是你想要的,但它可能会变坏。
所以不要使用该语法;它会让你陷入困境,而且通过查看命令历史很难知道实际发生了什么。请使用git checkout branch-to-merge-into; git merge branch-to-merge-from
。所以如果你想从硬币合并成主,git checkout master; git merge coins
。
下一个问题是关于快进合并。这是Git在不需要合并的情况下所做的事情,当时分支机构没有发生分歧。例如,假设您有这...
A - B - C - D - G [master]
\
E - F - H [feature]
由于master
具有未在共同与feature
(d和G)的变化,它必须合并。因此git checkout master; git merge feature
会导致新的合并提交。
A - B - C - D - G - I [master]
\ /
E - F - H [feature]
但是,如果有对master
没有新的提交,你有这个(master
位于C指向)。
[master]
A - B - C - E - F - H [feature]
feature
据说没有偏离master
。不需要合并提交,所以Git不会为其中一个而烦恼。当你做git checkout master; git merge feature
它只是移动master
到H.
[master]
A - B - C - E - F - H [feature]
的Git能做到这一点,因为“分支”真的只是标签在提交指向。现在master
和feature
指向相同的提交。
我建议避免快进,同时合并特性分支,因为它失去了重要的考古资料。稍后有人查看存储库不能说E,F和H都是作为单个分支完成的。
我建议始终将功能分支与git merge --no-ff
合并。这迫使Git进行合并提交,并且有人在未来试图找出您的代码可以知道E,F和H都是更大整体的一部分。
A - B - C --------- I [master]
\ /
E - F - H [feature]
的合并提交,我也给你一个地方来描述分支,并添加东西像一个链接到这个问题/错误/票务描述转移究竟是什么。
不是“你的分支与'origin/master'最新'”表示没有东西可以拉动? –
你能给我们一个'git log --graph --decorate'吗?这将显示分行负责人和连接。否则我不确定你的问题是什么?这似乎是一个正常的[快速前进合并](http://stackoverflow.com/questions/2850369/why-does-git-fast-forward-merges-by-default#2850413)(即没有必要的合并因为“硬币”是分支的,所以'主人'没有改变,所以它只是把'主人'移动到硬币的位置。另外,你是否想将'master'合并为'coins'而不是'coins'合并为'master'? – Schwern