Help us understand the problem. What is going on with this article?

Macを手に入れてからgit completion bashとgit promptを使えるようになるまで

More than 1 year has passed since last update.

概要

Macを購入したら待ち受けている数多くの初期設定。
GUIツール以外にも、CLIで使う系のものは骨が折れますよね。

そんな中で、毎回git completion bashとgit promptに関しては調べてやっていたのでメモ書きとして。

各ツールの概要

git completion bashとは

Gitコマンドの補完を効かせてくれるやつです。
途中まで入力したブランチ名とかをTABキーで保管してくれたりします。

git promptとは

シェル上でのgit情報をわかりやすく見せてくれるやつです。
こういうの↓
スクリーンショット 2019-07-01 18.04.09.png

ブランチ名とか出てきて良い感じになります。

インストールしていく

Homebrewインストール

まずは、公式サイトからHomebrewを入れましょう。

Gitインストール

デフォルトでは、Xcodeのcommand line toolsが使えるようになっています。
しかし管理のしやすさなどから、Homebrewを使って今回は入れていきます。

brew install git

その後に、~/.bashrcを作成して下記を追加します。
gitのパスをインストールしたものに置き換えます。

~/.bashrc
export PATH="/usr/local/Cellar/git/2.5.0/bin:$PATH"

上記の2.5.0はインストールされたgitのバージョンが入るので、各バージョンによって書き換えましょう。

bash completionを入れる

各種コマンドの保管を行ってくれるやつです。
~/.bashrcに下記を追加します。

~/.bashrc
if [ -f $(brew --prefix)/etc/bash_completion ]; then
  source $(brew --prefix)/etc/bash_completion
fi

git completion bashを入れる

こちらも~/.bashrcに追加します。

~/.bashrc
source /usr/local/etc/bash_completion.d/git-prompt.sh
source /usr/local/etc/bash_completion.d/git-completion.bash
GIT_PS1_SHOWDIRTYSTATE=true
export PS1='\[\033[37m\][\[\033[36m\]\u\[\033[37m\]@\h \[\033[32m\]\W\[\033[37m\]]\[\033[31m\]$(__git_ps1)\[\033[00m\]\$ '

.bashrcにパスを通す

初期状態は~/.bash_profileがなく、今回作成した~/.bashrcにパスが通っていません。
そのため、~/.bash_profileから、~/.bashrcにパスを通しましょう。

~/.bash_profile
if [ -f ~/.bashrc ]; then
    . ~/.bashrc
fi

これでシェルを立ち上げ直せば、git completion bashとgit promptが使えるようになります!

参考記事

https://qiita.com/koyopro/items/3fce94537df2be6247a3

Canon11
OMO事業のベンチャー企業でバックエンドやってます。 帰り道で音ゲーやりがち。 メモがメインです。 Django / AWS / GCP / Docker / CircleCI / Terraform / php
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away