この記事は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 ブランチ名とかを覚えておくと間違えた時に修正がすぐにできるので便利です。
良いお年を