git的差异,看看有什么合并将引入(git diff to see what a merge wou

2019-07-30 16:41发布

所以,我和朋友一直工作的一个项目。 大部分的时间合并是无痛,因为我们通常在不同的领域工作。

最近我们一直运行到海誓山盟越来越多的创建讨厌合并(最后期限)。

所以我们开始研究如何看什么合并会做。 我找到了一种方法来使用git的差异:

git diff mybranch...hisbranch

这给了不错的成果。 问题是,因为它使用了最后的共同祖先,这祖先远越来越远回到那里是一个没有在任何一间分行已经改变合并了很多垃圾。

所以我想知道有没有办法想象什么合并会做。

我试过了:

git diff $(git-merge mybranch hisbranch) hisbranch

这似乎工作确定,但我想以可视化的另一种方式,所以我尝试合并:

git diff $(git-merge hisbranch mybranch) mybranch

但是,在这种情况下git-merge: command not found

有谁知道一个很好的办法让两个分支的展示什么是合并会引入差异? 也许突出矛盾?

如果没有,是否有任何可视化工具,可以让一个做手工提交,因此可以选择什么版本的代码是最好的。

Answer 1:

还有其他的方法来可视化会发生什么,但我觉得最简单的就是git merge --no-commit 。 从手册页:

--commit, --no-commit
Perform the merge and commit the result. This option can be used to override --no-commit.

With --no-commit perform the merge but pretend the merge failed and do not autocommit, to give the user a chance to inspect and further tweak the merge
result before committing.

基本上,我只是发出git merge --no-commit <branch>和检查结果。 如果我不喜欢他们,我发出git merge --abort ,或者如果我要提交合并,我用正常进行git commit



文章来源: git diff to see what a merge would introduce