Git如何找出在一个分支而不是另一个分支上执行的单个提交

Jes*_*sen 2 git diff

我即将为项目创建补丁文件.我的分支是我本地存储库中的"主".并且远程上游分支被映射到本地分支"origin".\使用此命令,我可以比较两个分支并查看所有差异

git diff origin..master

[gives me a full patch format of all commits]
Run Code Online (Sandbox Code Playgroud)

但在这种情况下,我想挑选一些提交并专门针对我的分支不同的不同区域创建一个新的补丁文件.问题是我如何看待个人提交?

hal*_*ski 8

要查看您可以使用的提交

git log origin..master
Run Code Online (Sandbox Code Playgroud)

您还可以添加-p选项以查看单个修补程序.如果你想樱桃选择提交,你可以使用git rebase -i非常整洁的选项.

On your master branch:
git checkout -b create-patch-foo
git rebase -i origin
Run Code Online (Sandbox Code Playgroud)

这将允许您选择,编辑,省略甚至压缩(组合)提交.


Jak*_*ski 6

试试git cherry A Bgit log --left-right --boundary --oneline A...B.