レポに次の履歴があるとします。
git log --oneline
<3rd sha1> Third commit.
<2nd sha1> Second commit.
<1st sha1> First commit.
3 番目のコミットを最初のコミットに押しつぶして、2 番目のコミットをそのままにしておくにはどうすればよいですか?
レポに次の履歴があるとします。
git log --oneline
<3rd sha1> Third commit.
<2nd sha1> Second commit.
<1st sha1> First commit.
3 番目のコミットを最初のコミットに押しつぶして、2 番目のコミットをそのままにしておくにはどうすればよいですか?
私はこれをしました:
git rebase -i HEAD~3
.に編集:
pick <2nd sha1> 2 番目のコミット。
pick <1st sha1> 最初のコミット。
squash <3rd sha1> 3 番目のコミット。
競合を解決しました: error: could not apply <2nd sha1>... Second commit.
。
git rebase --continue
.error: could not apply <1nd sha1>... First commit.
。git rebase --continue
.First commit (squashed).
) を入力しました。その後、それは行われました。
git log --oneline
:
git log --oneline
<2nd sha1> Second commit.
<1st sha1> First commit (squashed).
発生した競合は発生するはずであり、簡単に解決できました。
結果にはかなり満足していますが、これを達成するためのより良い方法があればとにかく知りたいです。