Gitで変更と取り消したい時に見る記事

ノート Git
Minimal Office desk table top view with open notebook blank pages, Keyboard computer, mouse, coffee cup on a white table with copy space, White color workplace composition, flat lay

はじめに

Gitを使用することが多くなり、非常に便利だと感じる一方で、コマンドやコマンドに伴う動きを理解しておかないと思わぬ事故の原因になると思い、備忘を兼ねて記事を書きます。

この記事では、Gitコマンドを使って変更を戻すという動きを整理します。

変更を戻したい時といっても以下のパターンが考えられ、それぞれ使用するコマンドも変わります。

  • git add をする前
  • git commit をする前
  • git push をする前

上記3つについて解説します。

git add する前(変更内容を戻すだけ)

git checkout {ファイル名}

ファイルが複数ある場合は

git checkout {ファイル名1} {ファイル名2} ... {ファイル名n}

というように複数書くこともできます。

また、全てのファイルを戻したい場合は

git checkout .

で全て戻せます。

git commit をする前(ステージングを取り消す)

git reset {ファイル名}

これでgit add する前の状態に戻せます。変更も取り消したい場合は、このあとにgit checkout {ファイル名}を実行します。

git push をする前(コミットを取り消す)

2つのコマンドが必要です。

git log --oneline
git reset --hard {コミットID}

git logで取り消したいコミットのコミットIDを確認します。その後、git reset –hardを実行します。

git log につけている –onelineは”ログを1行で表示する”というオプションです。個人的にはこのオプションを指定した方が見やすいのでおすすめです。

終わりに

Git操作をする際、CUIのコマンドからではなく、SourceTreeやエディタの拡張機能を使用する方も多いと思いますが、必ずしもツールが使えるとは限らないので、コマンドでのGit操作を覚えておくことに損はないかと思います。

コメント

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