0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

よく使うgitコマンド集

Last updated at Posted at 2024-02-12

ステージング(インデックス)の取り消し

ワークツリーは修正されない。

git reset HEAD

ワークツリー、ステージング共に取り消し

git reset --hard HEAD

特定のコミットまで巻き戻しも可能

git reset --hard <commit id>

Untracked fileの削除

# 削除されるUntracked fileを確認
git clean -n

# 削除実行
git clean -f

# ディレクトリごと削除する場合
git clean -df

gitの追跡対象外にする

ワークツリー(ローカル環境)にはファイルが残る

# ファイル
git rm --cached <ファイル名>
# ディレクトリ
git rm -rf --cached <ディレクトリ名>

ステージングの内容を直前のコミットに戻す

ワークツリーは修正されない

git checkout HEAD -- [ファイル名]

git rmで削除したファイルを復元する

直前のコミットからファイルを引っ張ってきて、反映する仕組み。

2ステップ必要

  1. git resetコマンドを使う
    git resetgit addの取消以外にも使える
  2. git checkoutでファイルを復元
    ※git checkoutは指定したコミットのファイル内容を展開する機能も持ってる

ステップ1(不要なケースもある)

git reset HEAD <削除したファイル>
# or
git reset <削除したディレクトリ>

ステップ2

git checkout HEAD <削除したファイル名>

ワークツリー、インデックス、リポジトリからファイルを完全に削除

※追跡対象外(.gitignoreで定義したconfigfileとか)のファイル(ディレクトリ)を指定するとローカル環境からも完全に削除されるので注意

git rm <ファイル名> [-n(対象ファイルの確認)]
git rm -r <ディレクトリ名> [-n(対象ディレクトリの確認)]

直近のコミットメッセージの書き換え

git commit --amend

過去のコミット履歴を追う

git log
# グラフで表示する(複数指定可能)
git log --graph --decorate HEAD origin/main
# 特定のファイル修正のコミットを追う
git log -- file名
# diffも同時に表示する(先の--fileと組み合わせるとファイルの修正履歴を追いやすい)
git log -p

差分表示するときに特定のディレクトリを除外

# :(exclude)【除外したいpathのパターン】
# testディレクトリが除外される

git diff master -- ':(exclude)*/test/*'

コミットメッセージの変更

[git] 戻したい時よく使っているコマンドまとめ

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?