スマレジエンジニアyushiのブログ

スマレジエンジニアのブログ

git開発環境の紹介

gitはもはやエンジニアにとっての必需品と思います。 今更gitのない生活には戻れないですね...。

今回は、僕が普段どのような環境でgitを使っているか、ご紹介しようと思います。

方針

  • 基本Terminal + VSCodeで操作する
  • 簡単に導入できる、oh-my-zshVSCodeの拡張でカスタマイズ

Source Treeを使うのもありですが、この手のアプリを使っているといつまで経ってもgitのコマンドを覚えられないですし、
機能も限られていたり、サーバ内で困ったりするんですよね。

一方グラフィカルな表示・操作はやはりしたいので、これはVSCodeの拡張で賄う方針です。

oh-my-zshのaliasを使う

oh-my-zsh、ご存知でしょうか。

シェルはaliasなどで自分好みにカスタマイズできるのが魅力ですが、新PCを買った時などげんなりするし、
かと言ってわざわざリポジトリ管理するのも...と思いますよね。

そんなあなたに、おすすめ設定盛り合わせを簡単に導入できるのがoh-my-zshです。

ohmyz.sh

(このHPは、いつの間にか公開されてた。かなり最近...?)

導入手順はこれだけ

sh -c "$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"

シェルの見た目はこんな感じになります。

f:id:yushi0:20210116124049p:plain

見た目以外にも、履歴やcompletion、ディレクトリ移動が簡単になるなどの便利要素がいっぱいあるんですが、
今回の注目ポイントは、gitのaliasが登録されていることです。

よく使うaliasは、例えばこの辺り

alias gaa='git add --all'
alias gb='git branch'
alias gbd='git branch -d'
alias gbD='git branch -D'
alias gc='git commit -v'
alias gc!='git commit -v --amend'
alias gco='git checkout'
alias gd='git diff'
alias gdca='git diff --cached'
alias gfa='git fetch --all --prune'
alias glg='git log --stat'
alias gm='git merge'
alias grb='git rebase'
alias grbi='git rebase -i'
alias gsh='git show'
alias gst='git status'

reflogがないのがやや難点。

gitコマンドをTerminalで打ち込むのは手間にも思えますが、aliasがあるだけでかなり楽ちんです。

VSCodeの拡張

Terminalだけでは限界があるので、グラフィカルにみたいものはVSCodeの拡張で賄います。
こちらも、簡単に導入できることが強みです。

Git History

Gitの履歴は通常Commit順に並びますが、この拡張を使うと、
ファイル単位や行単位の履歴を確認することができます。

f:id:yushi0:20210116132800p:plain

GitLens

これは色々な機能の詰め合わせのようです。

例えば、各行を最後に編集したcommitの情報が見えるとか。

f:id:yushi0:20210116153709p:plain

Git Graph

名前の通り、Gitのコミットログのグラフ表示です。

f:id:yushi0:20210116131923p:plain

詳しい説明は不要ですね。

まとめ

普段Gitのために使っている、ツールを紹介しました。

他にもお勧めがあれば、ぜひ教えていただきたいです。