よく使ってよく忘れるgitコマンド集

こんばんは、白米のおともです。

最近自分のプログラムをgitで管理するようになったのですが、 便利なコマンドを毎回忘れてそのたびに検索するのが面倒になったので一箇所にまとめておこうと思いたち この記事を書いています。

随時追加していって自分だけのgit コマンド辞書になればいいなぁ

目次

clone

リポジトリ名を変更してリモートリポジトリをローカルへclone

git clone [URL] [変更したいリポジトリ名]

checkout

リモートブランチをローカルへcheckout

ローカルブランチ名を先に書く。リモートブランチ名はリモートリポジトリの名前から書く。

git checkout -b [local branch name] [remote branch name]

ログ表示(log)

特定のファイルの変更の確認

--word-diff をつけると変更が1行で表示される。 通常 同一の行を修正した場合、+, - が分かれて表示されるがそれを1行で表示できて見やすい。

git log (--word-diff) -p [File Path]

指定文字列を変更したコミットを表示

変更したコミットが一覧ででるだけなので、詳細をみるには git show しなければいけない。

git log -S "文字列"

ファイル編集のステータスの表示

追加したファイルは A 、編集したファイルは M で表される。

git log --name-status

他ブランチのログの表示

git log --first-parent [branch name]

ログを古い順から表示

git log --reverse

特定のcommit idのログの詳細の表示

編集中に git diff をしたみたいに表示され、どのファイルのどこに何を追加/削除したが分かる。

git show [commit id]

変更点の一時退避(stash)

一時退避

git stash
// メッセージを付けて退避する場合
git stash save "message"
// 指定ファイルのみ退避する場合
git stash push -- [file path]

退避したコードの一覧を確認

git stash list

退避コードの適用

番号を指定しない場合は最新コードが適用される。

git stash apply stash@{N}  // N番目のコードを適用してコードを残す
git stash pop stash@{N}  // N番目のコードを適用してコードを削除

退避コードの削除

番号を指定しない場合は最新コードが適用される。

git stash drop stash@{N}  // N番目のコードを削除
git stash clear  // すべての退避コードを削除

branch

branch一覧を新しい順にソート

git branch --sort=-authordate

branch一覧を古い順にソート

git branch --sort=authordate

subodule

submoduleの更新

git submodule update --init --recursive

参考ページ

git-scm.com

最終更新日: 2022.6.15.Wed