私は、マスター ブランチが開発者ブランチに定期的にマージされるようにする任務を負っています。
弊社の体制はこんな感じです。4 つのリポジトリがあり、それぞれのリポジトリにメインのマスター ブランチがあり、いつでも作業中の約 5 ~ 10 の開発者ブランチがあります。開発者ブランチは 1 日から 3 か月の間アクティブにすることができ、ブランチの名前が重複することはありません。
週に 1 回、マスター ブランチだけでなくすべての開発者ブランチをチェックし、どのブランチがマージされ、どのブランチがマージされていないか、そしてそれらの最後のマージがいつ行われたかを追跡する必要があります。
私は現在、SmartGit を使用してブランチに切り替え、ログを確認するなどしてこれを行っていますが、このプロセスを高速化するか、場合によっては自動化したいと考えています。
これを行うツールはありますか、これを行うために書くことができるバット スクリプトはありますか?
他のgit関連の質問を見ると、いくつかの組み合わせを使用できる可能性が高いことがわかります
git show :/"Merge branch 'master'"
と
git log --pretty=format
しかし、これを現在の手動の方法よりも迅速かつ簡単にする何かが欠けているに違いありません。
編集:
これまでのところ、非常に有望な回答が寄せられているので、2 つのしわを追加したいと思います。
- 両方の方向を追跡する必要があります。開発者ブランチが master からマージされるとき、および master にマージされるとき。
- 「プロダクション」と呼ばれる 3 つ目のブランチも監視する必要があります。master を他のブランチと比較する答えは、「production」ブランチをさまざまな名前付き開発者ブランチと比較しても機能しますか?