Open TokiNoviceProgrammer opened 3 months ago
マージのコミットも通常のコミットと同様に取り消せる
以下では例としてbug-xxxx
のマージを取り消す
git reset --hard HEAD^
を実行→ローカルブランチが1つ前のコミットに戻る
git push --force
で強制プッシュすることで、リモートブランチにもコミットがなかったことになる
マージの取り消し後は再度プルリクを作成してマージ可能 プルリクを承認してマージすると取り消し前と同じ状態になっていることがわかる
取り消したコミットの履歴を残したい場合 以下は、テストコミット07を取り消す例
git revert HEAD
を実行すると以下のようにコミットコメント編集モードになる
編集が終わればesc
を押下し、:wq
を入力してエンターを押下する
(コメントは基本はデフォルトのままで良いはずであるため、何もせずに上記の手順を実施すれば良い)
上記を実施後、「テストコミット07を取り消す」内容の新たなコミットができる
git push origin feature
を実行し、指定のリモートブランチにプッシュする
テストコミット07を取り消した(revert した)コミットがpushされていることが確認できる
通常コミットの取り消し 以下では例として
テストコミット04
を取り消すgit reset --hard HEAD^
を実行→ローカルブランチが1つ前のコミットに戻る (コミット前のステージングは残したい(ローカルでの変更は残したい)場合はhard
ではなくsoft
を使用する)git push --force
で強制プッシュすることで、リモートブランチにもコミットがなかったことになる