我一直在尝试使用
git log --no-merges --cherry-pick --right-only master...my-branch
Run Code Online (Sandbox Code Playgroud)
生成my-branch中但不在master中的提交列表(根据git-log文档).但是,列表中仍有许多等效的提交.如果我显示它们和它们的补丁,除了commit id之外没有区别.
git show 16cbd0e47406a4f7acbd6dc13f02d74d0b6a7621 >patcha
git show c53c7c32dcd84bfa7096a50b27738458e84536d5 >patchb
diff patcha patchb
1c1
< commit 16cbd0e47406a4f7acbd6dc13f02d74d0b6a7621
---
> commit c53c7c32dcd84bfa7096a50b27738458e84536d5
Run Code Online (Sandbox Code Playgroud)
甚至将git patch-id
它们视为等效:
git show c53c7c32dcd84bfa7096a50b27738458e84536d5 | git patch-id
2b5504fb9a8622b4326195d88c7a20f29701e62b c53c7c32dcd84bfa7096a50b27738458e84536d5
git show 16cbd0e47406a4f7acbd6dc13f02d74d0b6a7621 | git patch-id
2b5504fb9a8622b4326195d88c7a20f29701e62b 16cbd0e47406a4f7acbd6dc13f02d74d0b6a7621
Run Code Online (Sandbox Code Playgroud)
怎么不git log --cherry-pick
把这些作为重复?
我有一个视线问题我需要通过访问两个(非网格对齐)点之间的3D体素空间中的所有可能单元来解决.
我考虑过使用3D Bresenham算法,但它会跳过一些细胞.
一个天真的实现可能是以比体素网格更高的分辨率检查沿线的点,但我希望有一个更智能的解决方案.
有人有任何线索吗?