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

【備忘】VscodeやWindows Terminal で Git Bash を使うとなんか表示がちがって困った

たぶん当たり前のことだと思いますが、備忘として書きます

TL;TD

  • 今までGit Bash はbash.exeを実行してつかっていた
  • VscodeやWindows Terminal で Git Bash を使うときはC:\\Program Files\\Git\\bin\\bash.exeを呼び出すようにする
  • けど、そうするとディレクトリに色がつかないなど、なんか表示違う
  • bash.exeはC:\\Program Files\\Git\\bin\\bash.exe --login -iを実行して起動しているようので、同じようにすればOK

どう違うの

  • C:\\Program Files\\Git\\bin\\bash.exeの場合

    • ディレクトリに色がつかない
    • image.png
  • C:\\Program Files\\Git\\bin\\bash.exe --login -iの場合

    • bash.exeと同じ
    • image.png

Windowns Terminalの場合

  • Git Bash を使えるようにする、基本的な設定はこちらを参考にしました。(分かりやすい。。感謝ですm(__)m)
  • configで設定するcommandlineに引数追加
    • "commandline" : "C:\\Program Files\\Git\\bin\\bash.exe"
    • "commandline" : "C:\\Program Files\\Git\\bin\\bash.exe --login -i"にすれば良し

VScodeの場合

  • terminal.integrated.shellArgs.windows でwindows OSでのtemrinal実行時引数が設定できる
  • 設定ファイルのJSONにterminal.integrated.shellArgs.windowsを追加。valueを↓みたいにする
    • "terminal.integrated.shellArgs.windows": ["--login", "-i"]
  • windows OSでのtemrinal実行をWSLにしていると無効な引数に扱われて実行失敗するので、使い分ける人とかは注意

なぜなのか

  • ログインシェルとインタラクティブシェルの違いに原因がある様子。
  • bash.exeはログインシェルで起動している
  • ログインシェルじゃないと、~/.bash_profileなどが読みこまれない。

参考

willco21
エンタープライズ向けソフトウェア会社へ入社。SREとしてAWSを用いた運用業務、インフラ改善を実施 最近、AWS Certified Solutions Architect - Professional(SAP)を取得しました AWS記事を中心に、ちょっと困ったことを解決するナレッジを提供出来たらと思っています
works-hi
「はたらく」を楽しく!に向けて大手企業の人事業務から変えていく HR業界のリーディングカンパニー
https://www.works-hi.co.jp/
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