この記事はPONOS Advent Calendar 2021の25日目の記事です。
昨日は私のUnityのLightAnchorについてもう少し詳しくでした。
よく使っているgitのサブコマンドとオプションの紹介
git status
手元の変更されているファイルやディレクトリを確認できます。
git diff
変更内容を確認できます。
git diff ファイル名
で特定のファイルやディレクトリの変更だけを確認できます。
他にも様々なオプションがありますがほぼこれだけ使っています。
git add .
変更のあるファイルや新規に追加したファイルをすべてステージングします。
変更ファイルが複数ある時に1個づつaddしていくのは辛いのでgit add .
で一括追加します。
git reset .
すべてのステージングを取り消します。
git restore .
コミットされていないすべての変更をなかったことにします。
色々とコードを書き換えて見たけどやっぱり戻そう、という時に使います。
git restore ファイル名
で特定のファイルだけ変更を取り消すこともできます。
古いgit
では使えない事があるのでその時はgit
を更新しましょう。
git fetch -ap
通常のfetch
の動作に加えてリモートでは削除されたブランチだが手元に情報が残っているかつチェックアウトしていないブランチの情報を削除できます。
git branch -a
とかでいつまでも削除されたリモートのブランチが残るのが嫌なのでfetch
は基本的にgit fetch -ap
で行っています。
git commit -m "コメント"
コミットです。
git push -f
強制push
です。
リモートに上げたコミットのコメントが間違っているときなどに次に紹介するgit commit --amend
してからgit push -f
したりします。
git commit --amend
直前のコミットのコメントを書き換えるのに使います。
コミットコメントを書き間違えた時にお世話になります。
git log -n 確認したいログの数
間近のコミット履歴を確認するのに使います。
ほとんどの場合1~3個前くらいの履歴で事足りるのでgit log -n 1
とかで使います。
git merge origin/ブランチ名
手元に最新のmasterやdevelopをマージする時に使います。
git fetch -ap
で最新の情報を取ってきてgit merge origin/develop
やgit merge origin/master
で最新の変更をマージします。
これがないとdevelopに切り替えてpull
して元のブランチに切り替えてgit merge develop
とかしなきゃいけないので手間です。
git switch ブランチ名
ブランチを切り替えます。
新しくブランチを作って切り替える場合はgit switch -c ブランチ名
です。
こちらも古いgit
では使えない事があるのでその時はgit
を更新しましょう。
git branch -m ブランチ名
ブランチ名を変更します。
ブランチ名もよく間違えるので使います。
git author
自作のサブコマンドです。Rust製です。
実際に使ってますが若干宣伝です。(2年前のアドカレでも宣伝してます)
user.name
とuser.email
を確認/設定するのにgit config user.name
, git config user.email
を叩くのが嫌で作りました。
git author
でsample_user <sample@email.com>
のように確認できます。
gut author sample_user sample@email.com
でセットもできます。
間違えて違うユーザーでコミットした時にAuthor/Commiterを書き換えるreplace
コマンドもあるのですが使いづらいので次のバージョンで改修予定です。
まとめ
よく使うサブコマンドとオプションの紹介でした。
git commit --amend
とかgit branch -m ブランチ名
とかを覚えておくと間違えた時に修正がすぐにできるので便利です。
良いお年を