我一直在尝试使用
git log --no-merges --cherry-pick --right-only master...my-branch
按照 git-log 文档,生成一个列出“我的分支”中但不在主分支(master)中提交记录的列表。然而,列表中仍有许多等效的提交记录。如果我显示它们及其补丁,则除了提交 ID 之外没有任何区别。
git show 16cbd0e47406a4f7acbd6dc13f02d74d0b6a7621 >patcha
git show c53c7c32dcd84bfa7096a50b27738458e84536d5 >patchb
diff patcha patchb
1c1
< commit 16cbd0e47406a4f7acbd6dc13f02d74d0b6a7621
---
> commit c53c7c32dcd84bfa7096a50b27738458e84536d5
即使git patch-id
也显示它们是等价的:
git show c53c7c32dcd84bfa7096a50b27738458e84536d5 | git patch-id
2b5504fb9a8622b4326195d88c7a20f29701e62b c53c7c32dcd84bfa7096a50b27738458e84536d5
git show 16cbd0e47406a4f7acbd6dc13f02d74d0b6a7621 | git patch-id
2b5504fb9a8622b4326195d88c7a20f29701e62b 16cbd0e47406a4f7acbd6dc13f02d74d0b6a7621
如何使用git log --cherry-pick
时不将这些内容视为重复?