4
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

WSL2でGitのブランチ名をプロンプトに表示する方法

Last updated at Posted at 2025-05-16

はじめに

WSL2を用いて開発を行っていると、コマンドライン操作を行うことが多くなります。
その際にGitを使用することも頻繁なはずで、Git Bashのように現在のブランチ名がプロンプトに表示されると非常に便利です。

なぜブランチ名表示が重要か?

Gitを使っていると「今どのブランチで作業しているっけ?」という時間を生みたくありません。
そんな状況だと作業ミスも発生しやすくなります。
しかしながらWSL2のデフォルトプロンプトだとブランチ名などは特に表示されないため、非常に不便ですし、いちいちgit branchなどのコマンドを実行するのはとてもめんどくさいです。

背景知識

WSL2では、プロンプトのカスタマイズを行うために、シェルの設定ファイルである.bashrcを使用することができます。
このファイルにカスタム設定を追加することで、プロンプトのスタイルや表示を変更できます。
(もちろん、プロンプトのカスタマイズ以外にも、エイリアスの設定や環境変数の定義なども行えます。)

今回はGitの現在のブランチ名を取得する関数を定義し、シェルプロンプトに組み込むことで、ブランチ名が表示されるようにしてみましょう。

方法

ステップ1: .bashrcファイルを編集

まず、WSL2で利用されるホームディレクトリにある.bashrcファイルを編集します。
コマンドを使用して、エディタで該当のファイルを開きます。
自分はVSCodeを使っているので、以下のようにVSCodeで開いています。

code ~/.bashrc

ステップ2: .bashrcにコードを追加

.bashrcファイルに以下のコードを追加します。このコードは、プロンプトに現在のGitブランチを表示するためのものです。

# color
USER_COLOR="\[\033[1;37m\]"  # white
LOCATION_COLOR="\[\033[1;32m\]"  # green
GIT_BRANCH_COLOR="\[\033[0;33m\]"  # orange
NO_COLOR="\[\033[0m\]"  # No_Color

# git branch
parse_git_branch() {
     git branch 2> /dev/null | sed -e '/^[^*]/d' -e 's/* \(.*\)/ (\1)/'
}

# PS1
PS1="${USER_COLOR}\u ${LOCATION_COLOR}\w${GIT_BRANCH_COLOR}\$(parse_git_branch) ${NO_COLOR}\$ "

コードの解説

  • カラー設定: プロンプトの色を指定します。好きに変更してもらって構いません。
  • parse_git_branch: 現在のGitブランチを取得するコマンドを実行します。
    • git branch 2> /dev/nullについて:
      • 2> /dev/nullは、「標準エラー出力」を無視するための記述です。Gitリポジトリではないディレクトリでgit branchを実行すると、エラーメッセージが表示されることがあります。このエラーメッセージは通常画面上には必要ないので、「ブラックホール」とも呼ばれる/dev/nullにエラーメッセージを送って捨てています。
  • PS1: シェルプロンプトのデザインを設定する変数です。parse_git_branchを呼び出し、プロンプトにブランチ名を追加しています。

ステップ3: 設定を反映

ファイルを保存してエディタを閉じたら、以下のコマンドを実行して設定を反映します。

source ~/.bashrc

これで、新しいプロンプト設定が有効になります。

まとめ

あくまで今回のカスタムプロンプトの設定は私好みの一例に過ぎないので、みなさんなりのカスタマイズを楽しんでみてください。(もしよかったらコメントなどで教えてもらえると嬉しいです!)

4
0
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
4
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?