我怎么看到的Git分支之间的差异承诺?(How do I see the commit differ

2019-07-17 11:08发布

我对分支-X并增加在它的上面一对夫妇更多的提交。 我希望看到所有主,我在提交方面的分支之间的差异。 我可以做一个

git checkout master
git log

然后

git checkout branch-X
git log

和视觉diff的这些,但我希望一个更简单,更不容易出错的方法。

Answer 1:

你可以得到你的分支机构如何与此不同的一个非常好的,视频输出

git log --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr)%Creset' --abbrev-commit --date=relative master..branch-X


Answer 2:

您可以轻松地做到这一点与

git log master..branch-X

这将显示您提交该分支-X具有主却没有。



Answer 3:

我认为这是一个选择的问题,并context.I喜欢使用

git log origin/master..origin/develop --oneline

它会显示犯开发其不在主分支。

如果你想看到哪些文件实际上是修改使用

git diff --stat origin/master..origin/develop

如果不指定参数,将显示完整的差异。 如果你想看到的视觉差异,安装meld在Linux或WinMerge在Windows上。 确保它们的默认difftools。然后使用类似

git difftool -y origin/master..origin/develop

如果你想将其与当前分支进行比较。 它是使用更方便,而不是分行名称,如使用HEAD:

git fetch
git log origin/master..HEAD --oneline

它会告诉你所有的提交,即将合并



Answer 4:

如果你是在Linux上, gitg是路要走非常迅速,图形做到这一点。

如果硬要命令行,你可以使用:

git log --oneline --decorate

为了让git log默认情况下更好,我通常设置这些全局参数:

git config --global log.decorate true
git config --global log.abbrevCommit true


Answer 5:

我建议下面看到“在提交”的区别。 对于对称差,重复与倒ARGS的命令:

git cherry -v master [your branch, or HEAD as default]


Answer 6:

如果你想使用gitk:

gitk master..branch-X

它有一个很好的老同学GUI



Answer 7:

没有完美的答案,但工程使用Github的人更好

转到您的回购: Insights -> Network



Answer 8:

#! /bin/bash
if ((2==$#)); then
  a=$1
  b=$2
  alog=$(echo $a | tr '/' '-').log
  blog=$(echo $b | tr '/' '-').log
  git log --oneline $a > $alog
  git log --oneline $b > $blog
  diff $alog $blog
fi

特约这一点,因为它允许并在视觉上被diff'ed B登录,肩并肩,如果你有一个视觉差异的工具。 在与命令结束替换diff命令来启动可视化差异工具。



文章来源: How do I see the commit differences between branches in git?