web-dev-qa-db-ja.com

Intellij-ローカルブランチのみを潰す方法

Intellij内でGitを使用する場合、ローカルブランチのすべてのコミットをスカッシュするにはどうすればよいですか?リベースブランチウィンドウではどの設定を使用しますか?

Ontoをlocal/masterに設定し、Fromをブランチに設定しようとしましたが、コミットを行うたびにマスターの変更をブランチにマージしようとしましたが、通常は毎朝ブランチをマスターにリベースしています...そのため、衝突はないはずです。しかし、ほとんどの場合、競合が見つかり、マージの問題が発生します。ブランチのコミットとメッセージを押しつぶしたいだけなので、Githubにプッシュすると、1つしか表示されません。

enter image description here

16
NikZ

少し不快かもしれませんが、HEAD〜のgit表記を使用できるので、[Onto]フィールドに、含めるコミットの量を次のように記述します。

この例では、1つに結合する4つのコミット(最後の4つ)があります。

rebase interactive dialogue

最初のダイアログでは、エントリが順番にリストされているため、ドロップボックスを使用して最初のエントリの後にすべてつぶす必要があります。 (私は最初の言葉を言い換えましたが、とにかくつぶすためのメッセージ変更ダイアログがあるので、それは「ピック」のままにしておくことができるので、それは必要ありません)

squashing

これで、commitを組み合わせた新しいメッセージが表示され、完了です。

commit message

29
Alim Özdemir