非常に大きなリポジトリがあり、クリーンアップが必要です。リポジトリはSVNからのもので、そもそも面倒でした。
多くのブランチがあり、それらのいくつかはトランクにマージされましたが、他はそうではありませんでした。残念ながら、SVNはこれを追跡しなかったため、SVNからのマージされた/マージされていないブランチは同じように見えます。(枝が風にぶら下がっているだけです)
これらの無関係な枝を切り落とし、少しきれいにしたいと思います。
コミットのSHA1を取得し、そのコミットで発生した変更のみをマスターにあるものと比較するにはどうすればよいですか?(したがって、特定のブランチのコミットのすべての変更がマスターにある場合は、ブランチを削除できます。そうでない場合は、ブランチを適切に維持できます)。
ツリーの例:
o--o--o--o--o Unmerged from SVN
/
o--o--o--o--o--o--o--o--o--o--o--o--o--o--o--o--o--o--o Master
\ \ /
o--o--o Merged from SVN o--o--o
(Gitが知る限り、2つのブランチがマスターにマージされないことに注意してください。ただし、そのうちの1つでは、SVNリポジトリである間にマージされたため、すべての変更がマスターにあります。これは削除したいです)