私のチームはgithubとsourcetreeを使用してワークフローを管理しています。最近、githubのスカッシュマージ機能を試し始めました。私たちは本当に私たちの仕事の歴史をきれいに保つ方法が本当に好きであり、本質的にPRごとに1つのコミットを持っています。スカッシュ使用時にブランチがマージされているかどうか判断できません
スカッシュコミットを使用すると予期せぬ欠点の1つは、ローカルブランチをいつ削除できるかを知ることが難しいことです。私のチーム全体は、コミットされたことをコミットグラフで視覚的に見ることができることに基づいて地元の支店を管理していると思われます。数日おきに地元の支店を1つずつ調べて、それがあればローカルで削除してください。スカッシュマージを有効にすると、このビジュアライゼーションが削除され、ブランチがマージされたかどうかを判断することが困難になります。
スカッシュコミット機能を使用するのが本当に好きですが、ブランチがマージされていてローカルで削除するのが安全かどうかを判断する信頼できる方法が必要です。私たちがこれを達成するために考えなかった良い方法がありますか?
シェルにアクセスできる場合は、 'git diff'を実行できます。または、どのコミットがマージであるかを知ることができない場合は、おそらく 'git checkout ; git rebase origin/master; git diff HEAD origin/master' –
0x5453
githubとsourcetreeは '--first-parent'オプションを提供していませんか?リニアライズされた履歴は見やすくなりますが、より正確に「ロボタイマー化」されています。時にはそれだけで必要なものはすべてありますが、これは人生の手段としての制限です。 – jthill
@ 0x5453各ブランチのgitコマンドを実行しても、非常にスケーラブルなソリューションのようには見えません。すべてのローカルブランチを繰り返し処理し、マージされたものを削除するスクリプトなどを作成する必要があります。それはうまくいくかもしれません。 jthill私は彼らがそう信じていません。 – spierce7