gitのlogを使いこなしたい


公式:
https://git-scm.com/docs/git-log

git logすると、ずらーーーーとlogが羅列される。
その画面における、操作を習得したい。


オプション

出力方法を習得したい。ほんとに。

よく使いそうなこと

つないで表示

git log --graph


1行で表示

git log --oneline


1行で日付も表示

git log --pretty=reference


1ファイルに関して追跡

git log --follow hoge.txt

1ファイルのみ有効
名称変更も超える(たぶんgit mvコマンド使用しないとダメなのでは。)

差分も表示

git log -p
git log -u
git log -patch



こんなのもできるよ

マージコミットのみ/マージコミット以外表示

git log --merges
git log --no-0merges


ログ表示数の指定

git -表示数
git -n 数字
git --max-count=数字

3つとも同じ

ブランチ名の出力設定

git log --decorate=short
git log --decorate=full
git log --decorate=auto
git log --decorate=no

下の(HEAD, ..... )の部分の表示方法の設定。

C:/hoge>git log
commit f5434123123132123 (HEAD, main, origin/HEAD, origin/main)
Autor: aa
Date: bb

  hoge commit

short, autoは上の例のような感じ。
fullはrefs/heads/main, refs/remotes/origin/mainのようになる。
noneは表示されなくなる。

コミットIDの表示

git log --no-abbrev-commit

git log --onelneは省略されたものが書かれるが、このオプションを入れると全長が見れる。
defaultの設定はlog.decorate にて可能。

カスタマイズ

git log --pretty="%C(auto)%cs %h %s %d"





コマンド操作

画面操作を習得したい。ほんとに。

終了する

q, Q, ZZ

動かす

1行↓:j, e
1行↑:k, y
1win↓・N行↓(一度のみ):f
1win↑・N行↑(一度のみ):b
1win↓・N行↓(以降Nまま):z
1win↑・N行↑(以降Nまま):w
半win↑:u(Nで行数指定)
半win↓:d(Nで行数指定)
Nについては、数字を入力してz, fあるいはw, bを押せばよい。
Nを入力後z, wを実行すると、以降Nが記憶される。
z, wを実行した後のf, bも記憶されている。
f, bは、一度N行のスクロールがされるが、2回目以降は1winに戻る。


探す

検索

?を入力した後に、文字列を入力し、Enter
/でもよい。
?と/は、上向きで探すか下向きで探すのいずれか(違い分からなかった)

検索して合致箇所のみ表示

&hoge

検索結果を追う

1つ上のヒット箇所に移動:n
1つ下のヒット箇所に移動:N


ハイライト削除

esc u


ジャンプする

一番上:<
一番下:>