CUIでgit使うときにやっておくこと

## 2018/03/29 追記 ##

gistで.gitconfigを公開しています。—> yutarot/.gitconfig

 

忘れやすいのでメモ。

  • 前提
    • MacOS 10.11.4 (bash利用)
    • git version 2.8.2

  1. Tabでコマンド・ブランチ名を保管できるようにする(bash)
    • bash で git コマンドのブランチ名などを補完するにはgit-completion.bash を導入する。
      導入手順はこちらのページを参考にしました。
  2. .gitconfigにエイリアスを設定
    • タイピング量を減らすため、よく使うコマンドはエイリアスを設定しておくと便利。
      こちらのゆるよろさんの記事ktty1220さんの記事を参考に、自分が使うものだけ抽出・更新してできました。

      [alias]
      	########## basic commands ###########
      	ad = add
      	st = status
      	cm = commit
      	br = branch
      	ps = push
      	pl = pull
      	co = checkout
      	########## custom commands ##########
      	rs = reset --hard --
      	df = diff --color-words --word-diff-regex='\\w+|[^[:space:]]' #diff
      	dl = branch -D # delete
      	lg = log --graph --name-status --decorate # log
      	lgg = log --graph --all --pretty=format:'%C(yellow)%h%Creset %C(magenta)%cd%Creset %C(cyan)%cn%Creset %s %Cred%d%Creset' # log graph
      	d1 = diff HEAD~            # HEADから1つ前とdiff
      	d2 = diff HEAD~~           # HEADから2つ前とdiff
      	d3 = diff HEAD~~~          # HEADから3つ前とdiff
      	d4 = diff HEAD~~~~         # HEADから4つ前とdiff
      	d5 = diff HEAD~~~~~        # HEADから5つ前とdiff
      	d10 = diff HEAD~~~~~~~~~~  # HEADから10前とdiff
      	alias = !"f(){ if test -z $1; then loop=; for k in `git config --get-regexp ^alias\\. | sort | gsed -e 's/^alias\\.\\(\\S*\\).*/\\1/g'`; do printf $k; loop=${loop}1; if test ${#loop} -lt 5; then printf '\t'; else echo; loop=; fi; done; echo; exit; fi; git config --list | grep ^alias\\.$1= | gsed -e s/^alias\\.//; exit; }; f"

基本コマンドのエイリアスはタブ補完ができれば無くてもそこそこ便利に使えるけど、あったらあったでやっぱり便利。

 

Leave a Reply

Your email address will not be published. Required fields are marked *