【Git】 間違えてコミットしてしまったときは【reset】

Git
この記事は下記のような人に向けた記事です。
・ Gitを使った作業がある
・ Gitで間違えてコミットしてしまった!

皆さん、Git使ってますか?

Gitを使っていて、間違えてコミットしてしまったことはないでしょうか?

そんな時に使えるコマンドを紹介します。

git reset コマンドにはオプションが3種類ある

git reset は、コミットの履歴を完全に消すコマンドです。

大雑把ではありますが、オプションが3つあります。

  • hard ・・・ コミットの取り消し、ローカルの変更の取り消し。
  • soft ・・・ コミットの取り消し、ローカルの変更はそのまま。addしたものもそのまま。
  • mixed ・・・ コミット、addの取り消し。

基本的に上の二つのみ押さえていればいいと私は思っています。

オプション:hard

手っ取り早く直前のコミットを一つ削除、ローカルの変更も無かったことにする場合は、以下。

$ git reset --hard HEAD^
  • 修正をコミットしちゃったけど、そもそも修正する必要なかった
  • 間違えて修正した内容をコミットしてしまっていて、一度全部なかったことにしたい

上のような場合に使えそうですね。

オプション:soft

こちらも手っ取り早く直前のコミットを削除、ローカルの変更は保持する場合は、以下。

$ git reset --soft HEAD^
  • 間違えてコミットしちゃった!

って時に使えそうですね。

オプション:mixed

softオプションとの違いは、addしたファイルも同時に取り消す点です。

使いこなせたらカッコ良いですが、個人的にはsoftのみでも十分な気はしてます。

$ git reset --mixed HEAD^

後書き

私自身もよく混乱してググることが多いため、パッとコマンドがわかるようにまとめてみました。

需要がありそうであれば、詳細な解説も追記しようかと思います!

では!

コメント

タイトルとURLをコピーしました