カクカクしかじか

技術的なアレコレ

tigを最低限のカスタマイズで便利にする

tigって?

雑に言うとローカルでGitを良い感じに使うためのCUIクライアント?です!

tigの入れ方

Macの場合はbrewでインストールすればOK!

$ brew install tig

使い方

ローカルのGit管理下のフォルダ配下で tig とコマンドを打つだけ!(操作はVimで行う)
Vimでの操作になりますが最低限これらだけ覚えておけば便利に使えます!

「J」(下方向に移動)
「K」(上方向に移動)
「Enter」(開きたいコミット差分を開く)
「Q」(見ているGitの差分ページを抜ける)

何もカスタマイズしてない場合

Gitコミット一覧画面

image.png

個別のコミット差分をEnter押下で開いた場合の画面

image.png

カスタマイズしてみる

# ホームディレクトリに移動
$ cd 
# tigrcでカスタマイズする
$ vim .tigrc

カスタマイズした内容

.tigrc

# main view の左端にコミットIDを表示する
set main-view = id date author:email-user commit-title:graph=yes,refs=yes

# blame view の行数表示をON、intervalを1に
set blame-view  = date:default author:email-user id:yes,color line-number:yes,interval=1 text
# Pager系の行数表示をON、intervalを1に (default: line-number:no,interval=5)
set pager-view  = line-number:yes,interval=1 text
set stage-view  = line-number:yes,interval=1 text
set log-view    = line-number:yes,interval=1 text
set blob-view   = line-number:yes,interval=1 text
set diff-view   = line-number:yes,interval=1 text:yes,commit-title-overflow=no

カスタマイズ後の表示

image.png

何が嬉しい?

  • GitのコミットIDが一覧で見える
  • Gitの変更差分に行番号が表示されるようになったのでファイルのどの位置に変更があるのか追いやすくなった

管理方法について

.vimrcと同じようにdotfilesディレクトリで管理するのが良さそうです! なおdotfilesディレクトリ配下にファイルを作ってもデフォルトだと読み込まれないのでシンボリックリンクを貼ることを忘れずに! シンボリックリンクを貼らないとホームディレクトリの .tigrc 以外は読み込まれないです。

# ホームディレクトリ
$ mkdir dotfiles
$ cd dotfiles
$ touch .tigrc
# シンボリックリンクを貼る
$ ln -sf ~/dotfiles/.tigrc ~/.tigrc

おまけ:シンボリックリンクの貼り方

$ ln -sf 現在存在しているファイルまでのパス リンクさせたい場所

訂正:追記(2019/03/15)

  • Gitの変更差分に行番号が表示されるようになったのでファイルのどの位置に変更があるのか追いやすくなった

ここで出てくる行番号は差分ファイルの先頭行からのカウントではなくtigの画面の先頭行から数えた行番号なので実際の行番号とは微妙に異なります...なので!目安として行番号がどの位置に変更があったのか参考になるという理解の方が良いかもしれません。