1
2

More than 3 years have passed since last update.

gitコマンド・ブランチ名をターミナル上で表示・補完できるようにする設定(MacOS, 初学者向け)

Last updated at Posted at 2021-07-24

はじめに

  • macbookでプログラミングを学習していた際、
    デフォルトの表示だと、gitのブランチ名がプロンプトに表示されなかったり、 コマンドやブランチ名の自動補完機能がなかったので使い辛かった思い出がありました。そこで備忘録としてこの記事を作成することにしました。この記事が誰かのお役に立てば幸いです。

環境

MacBook Air (Retina, 2018)

Homebrewをインストール

のちに使うwgetコマンドをインストールするため、 最初にHomebrewをインストールする。
Homebrewのページに飛び、インストールコマンドをコピーし、
ターミナル上で実行する。
Homebrew.png

上でコピーしたものをterminal画面上で実行
$ /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

途中でパスワードの入力を求められるため、適宜ご自身のパスワードを入力
「Install successful!」と表示されたら、ターミナル上で

terminal画面
$ brew -v
もしくは
$ brew help

を実行して、Homebrewのバージョンやヘルプ一覧が表示されていれば、
インストール完了です。
こちらの記事を参考にさせていただきました↓

wgetコマンドをインストール

wgetコマンドとは?

wgetは、ソースコードやバイナリのダウンロードだけでなく、Webサイト全体あるいは特定の階層を一括取得できるコマンドのこと

wgetコマンドの構文

$ wget [options] [url]

[options]:ダウンロードプロセスをカスタマイズするために利用できる様々なオプションを設定可能
[url]:ここで指定したURLからファイルをダウンロードすることができる。

詳しい使い方等については、下記記事に色々と載っており、とても参考になりました
「wget」コマンド――URLを指定してファイルをダウンロードする

話が若干それましたが、
wgetコマンドを利用するためにまずターミナルを起動した後、

terminal
$ brew install wget

を実行.
インストールが完了したら

terminal
$ wget -h

を実行し、wgetのオプション一覧等がズラーっと表示されていれば、インストール完了。

git-completion.bashを導入する

git-completion.bashとは?

ターミナル内でgitコマンドを補完してくれるようになる補完スクリプト
今回はこれを読み込む
参考:git-completion.bash

導入方法

ターミナルで

terminal
$ wget https://raw.githubusercontent.com/git/git/master/contrib/completion/git-completion.bash -O ~/.git-completion.bash
$ chmod a+x ~/.git-completion.bash
$ echo "source ~/.git-completion.bash" >> ~/.bashrc
$ source ~/.bashrc

を順番に実行していく
これにより、下記のようになる。

terminal
[例]「git che」通した状態でtabキーを押すと、
$ git che
checkout    cherry    cherry-pick
と、候補が表示されるようになる。
[例] 「git chec」でtabキーを押すと、
$ git checkout
と表示される。

git-prompt.shを導入する

git-prompt.shとは?

プロンプトにgitに関する各種追加情報を表示できるようにするスクリプトのこと。
参考:git-prompt.sh

そもそもプロンプトとは

プロンプトとは、terminal内でデフォルトで表示されている、
「〇〇〇macbook:(フォルダ名 もしくは ~) 〇〇〇$」の部分のこと
左側にあるmacbookの表示や、自分のユーザー名など
いらない情報が含まれていることがあるので、この部分をこのgit-prompt.shを使って編集します。

導入方法

導入方法は先ほどのgit-completion.bashと同じように、

$ wget https://raw.githubusercontent.com/git/git/master/contrib/completion/git-prompt.sh -O ~/.git-prompt.sh
$ chmod a+x ~/.git-prompt.sh
$ echo "source ~/.git-prompt.sh" >> ~/.bashrc
$ source ~/.bashrc

を順番に実行していく。
完了したら、エディターを使って、~/.bashrcファイルを開き、中身を以下のように編集

~/.bashrc
source $HOME/.git-completion.bash
source $HOME/.git-prompt.sh

GIT_PS1_SHOWDIRTYSTATE=1
GIT_PS1_SHOWUPSTREAM=1
GIT_PS1_SHOWUNTRACKEDFILES=
GIT_PS1_SHOWSTASHSTATE=1

export PS1='\[\033[1;32m\]\u\[\033[00m\]:\[\033[1;34m\]\w\[\033[1;31m\]$(__git_ps1)\[\033[00m\] \$ '

最後のexportの中身によって、表示状態を変更することができるます。
文字の太さや背景色、文字の色など、より自分好みにカスタマイズしたい場合は、下記記事にがとても参考になりました。

これで今回のカスタマイズによって、ブランチ名も表示できるようになったと思います。

最後に

これで導入は完了ですが、このままだとターミナルを再起動したときに、プロンプトがまたデフォルトの状態に戻ってしまうので、
エディターで~/.bash_profileを開き、下記を追記してください。

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

そして、この設定を反映させるため

$ source ~/.bashrc
$ source ~/.bash_profile

を入力。これにより、
再起動した時でもプロンプトが設定した表示になったと思います。

参考

1
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
2