gitの概要メモ 5 gitの便利技各種

gitのちょっとした便利技について

 

色表示を有効にする

gitコマンド出力に色を付けて見やすくする。
$ git config --global color.ui auto

上を実行することで.gitconfigに、自動的に以下が記述される。

 

直前にいたブランチに移動する

$ git checkout -

 

git reflog

$ git reflog HEADの移動履歴を表示
$ git reflog BranchName ブランチの先端が指していたコミットの一覧を表示

 

git reflogの応用

$ git reset --hard HEAD@{n}
そのコミットへHEADを移動。
これを利用することで消してしまったcommitへもアクセスすることができる。

$ git branch NewBranchName HEAD@{n} そのコミットからブランチを作成

【参考】git reflog についてまとめてみる

 

git rebase

また追記します。

 

マージを取り消す

$ git reset --hard ORIG_HEAD マージ前に戻る

【参考】Gitでやらかした時に使える19個の奥義 – Qiita

 

コマンドタイポの補正

$ git config --global help.autocorrect 1 
gitコマンド実行時にタイポしたときに良い感じに実行してくれる
これによって例えば
$ git sttusなどと実行してみると、
「え、sttusなんてコマンドないよ? どうせ、statusを実行したかったんでしょ?はいはい、status実行しときますよ」
って感じで実行してくれる。

$ git config --global help.autocorrect 0 この設定を解除する

 

エイリアスについて

git関連コマンドってオプションとか付けると結構長くなると思います。
なのでそのショートカットコマンドのようなものを自作できます。
試しに3つ作ってみます。
・git graph
・git ssb
・git aa

git graphgit logに色々オプションを付けてブランチやマージ、コミットの履歴を見やすく表示するためのものです。
git ssbはよく使うgit status --short --branchを省略したものです。
git aaはよく使うgit add --allを省略したものです。

.gitconfigを開き以下を追加。

これだけです。

 

git tag

普段は相対的にコミットを指定したり、commitIDでコミットを指定して移動したりしますが、頻繁にアクセスするコミットだったり、リリース向けブランチの大きな意味をもつコミットに対しては名前をつけておくとアクセスが容易になると思います。
$ git tag tagName 現在のブランチの最新のコミットにタグを付与する
$ git tag -a newTagName -m "comment" タグ付けに際してコメントも追加
$ git tag -a newTagName -m "comment" commitId 前のコミットにタグを付与する
$ git tag -d tagName タグを削除
$ git tag タグ一覧表示
$ git push origin tagName リモートにタグ名を反映する。
$ git show tagName 特定のタグを確認
【参考】git tagの使い方まとめ – Qiita

 

editor設定

コミットメッセージ付与する時に立ち上げるエディタを変更する
例)atomにする
$ git config --global core.editor "atom --wait"
ちなみに自分はvimのままにしている。

 

.gitignore

また追記します。
【参考】.gitignoreの書き方

 

ファーストペアレント、統合ブランチについて

為になりそうなスライドがあったのでメモ。
・ファーストペアレントを辿ろう s.3
・使い捨て統合ブランチを使おう s.44

 

ペコる

pecoを使うことでbranch -aの出力をインクリメンタルサーチできる。

pecoのインストール
$ brew install peco

pecoをもちいてgit branch -aを見やすくする
$ git branch -a | peco

【参考】git branch -aが驚くほど見やすくなる小技 – Qiita

 

bitbucketでコミット間の差分を表示

bitbucketであるコミットとあるコミットの差分を表示する方法
やはり、差分表示はコマンドラインよりもGUIの方が見やすい。
僕がメインで使っているリモートサービスのbitbucketのコミットどうしの差分表示をする方法
https://bitbucket.org/<user>/<repo>/compare/<to>..<from>#diff
でアクセスする。とても見やすい。

【参考】github,gitlab,bitbucketでの差分確認URLまとめ – Qiita

コメントを残す