私は機能ブランチに数日間取り組んできましたが、今では にマージする準備ができていdev
ます。この機能に取り組んでいる間dev
、パッチを受け取るために とマージしました。私の履歴は次のようになります。
* E (feature1)
* D:merge with dev
| \
* C * B:patch (dev)
\ |
* A
dev
ブランチ全体を 1 つのコミットにまとめ、マージしてから早送りしたいと思いdev
ます。問題は、マージがそれらの間で行われるため、E
押しつぶすことができないことです。C
唯一のオプションは squashE
と(新しい commit を呼び出す) のようB
です。この場合、squash されたコミットには無関係なパッチの一部であった変更も含まれます。にマージされると、パッチを適用する 2 つのコミットがあります: (パッチを適用して機能を追加する) と(パッチを適用するだけ)。その上、今では 2 つの無関係な変更を行う予定です。C
F
dev
F
B
F
私の履歴をきれいに保つ方法はありますか?ワークフローを変更する必要がありますか?