Ave*_*ery 301 git logging branch git-log
我在分支-X上,并在其上添加了几个提交.我想看看MASTER和我提交的分支之间的所有区别.我可以做一个
git checkout master
git log
Run Code Online (Sandbox Code Playgroud)
然后一个
git checkout branch-X
git log
Run Code Online (Sandbox Code Playgroud)
并且在视觉上区分这些,但我希望有一种更简单,更不容易出错的方法.
Pab*_*ook 658
你可以轻松地做到这一点
git log master..branch-X
Run Code Online (Sandbox Code Playgroud)
这将显示你提交的分支-X但主却没有.
tom*_*tom 298
你可以得到一个非常好的视觉输出,你的分支与此有何不同
git log --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr)%Creset' --abbrev-commit --date=relative master..branch-X
Run Code Online (Sandbox Code Playgroud)
zai*_*eer 72
我认为这是选择和背景的问题.我更喜欢使用
git log origin/master..origin/develop --oneline --no-merges
Run Code Online (Sandbox Code Playgroud)
它将显示不在master分支中的develop中的提交.
如果要查看实际修改了哪些文件,请使用
git diff --stat origin/master..origin/develop --no-merges
Run Code Online (Sandbox Code Playgroud)
如果不指定参数,它将显示完整的差异.如果你想看到视觉差异,安装meld在Linux或WinMergeWindows上.确保它们是默认的difftools.然后使用类似的东西
git difftool -y origin/master..origin/develop --no-merges
Run Code Online (Sandbox Code Playgroud)
如果您想将其与当前分支进行比较.使用HEAD代替分支名称比使用更方便:
git fetch
git log origin/master..HEAD --oneline --no-merges
Run Code Online (Sandbox Code Playgroud)
它将向您显示即将合并的所有提交
mvp*_*mvp 15
如果您使用的是Linux,gitg那么就可以非常快速地以图形方式进行操作.
如果你坚持使用命令行,你可以使用:
git log --oneline --decorate
Run Code Online (Sandbox Code Playgroud)
为了在git log默认情况下更好,我通常设置这些全局首选项:
git config --global log.decorate true
git config --global log.abbrevCommit true
Run Code Online (Sandbox Code Playgroud)
mma*_*ska 12
我建议以下内容以查看"提交中"的区别.对于对称差异,请使用反向args重复命令:
git cherry -v master [your branch, or HEAD as default]
Run Code Online (Sandbox Code Playgroud)
我使用了一些答案并找到了适合我的情况的答案(确保所有任务都在发布分支中)。
其他方法也有效,但我发现它们可能会添加我不需要的行,例如不添加任何值的合并提交。
git fetch
git log origin/master..origin/release-1.1 --oneline --no-merges
Run Code Online (Sandbox Code Playgroud)
或者你可以将你当前的与master进行比较
git fetch
git log origin/master..HEAD --oneline --no-merges
Run Code Online (Sandbox Code Playgroud)
git fetch是为了确保您使用的是更新的信息。
通过这种方式,每个提交都将位于一行,您可以将其复制/粘贴到文本编辑器中,并开始将任务与将合并的提交进行比较。
要查看所有提交,就像您在 PR 的“提交”选项卡中看到的那样,请运行以下命令:
1. 基本:
git log --oneline origin/base..origin/my-branch
Run Code Online (Sandbox Code Playgroud)
2. 如果您不需要分支/标签,请添加--no-decorate
git log --oneline --no-decorate origin/base..origin/my-branch
Run Code Online (Sandbox Code Playgroud)
3. 如果您想按时间顺序对提交进行排序(最旧的在前),请添加--reverse
git log --oneline --no-decorate --reverse origin/base..origin/my-branch
Run Code Online (Sandbox Code Playgroud)
我花了一段时间才发现这些华丽的东西。希望它对某人有帮助。
| 归档时间: |
|
| 查看次数: |
168192 次 |
| 最近记录: |