Git でコミット(とかマージ)を無かったことにする方法といえば、「git revert」なのですが、使い方にちょっとひとクセ(?)あったのでメモっておきます。 「git revert」は正確には、commit を無かったことにするのではなく、対象の commit の変更を相殺するような差分commitを自動で生成するというものです。 コミットを文字通り無かったことにする(コミットログから特定のコミットだけ抜き出す=履歴が残らないようにする)には、「git reset --hard」「git rebase」「git cherry-pick」「git push -f」などを駆使すればできるのですが、いくつかコミットやマージが重ねられた後にそれをするのは、あまり現実的とは言えませんよね。 そこで、「git revert」の登場です。 実践 例えば、以下のような commit があったとします。
![Git で コミットを無かったことにする方法 (git revert の使い方) - akiyoko blog](https://cdn-ak-scissors.b.st-hatena.com/image/square/c970ae093c23aba7282f1e59b940a396f9bfa035/height=288;version=1;width=512/https%3A%2F%2Fcdn-ak.f.st-hatena.com%2Fimages%2Ffotolife%2Fa%2Fakiyoko%2F20170105%2F20170105231620.png)