web-dev-qa-db-ja.com

Git for Windowsで.bashrcファイルが実行されません

Windows 7にGit for Windows 2.5.0をインストールしたところ、.bashrcファイルは、Git Bashの実行時に実行されません。

私は次のようにファイルを作成しました:

Administrator@HintTech-Dev MINGW64 /
$ pwd
/

Administrator@HintTech-Dev MINGW64 /
$ cd ~

Administrator@HintTech-Dev MINGW64 ~
$ pwd
/c/Users/Administrator

Administrator@HintTech-Dev MINGW64 ~
$ touch .bashrc

Administrator@HintTech-Dev MINGW64 ~
$ vi .bashrc

[... I insert the line "ZZZTESTVAR=234" (without the quotes) into the file in vim ...]

Administrator@HintTech-Dev MINGW64 ~
$ exit

それでも、次にGit Bashを実行すると:

Administrator@HintTech-Dev MINGW64 /
$ set | grep ZZZ

Administrator@HintTech-Dev MINGW64 /
$ cat ~/.bashrc
ZZZTESTVAR=234

Administrator@HintTech-Dev MINGW64 /
$ ZZZTESTVAR=234

Administrator@HintTech-Dev MINGW64 /
$ set | grep ZZZ
ZZZTESTVAR=234

Administrator@HintTech-Dev MINGW64 /
$

なぜ私の.bashrc実行中ですか?適切な場所にあり、適切な権限を持っているようです。

42
Jez

OK、問題が見つかりました。簡単に言うと、最新のGit for Windows 2.5.0(mintty)で使用されるbash端末は、.bashrcを読むことを気にしません-.bash_profileを読みます。したがって、.bash_profileで環境をセットアップしたり、このコードを最初に置いて.bashrcを読み取ったりできます。

if [ -f ~/.bashrc ]
then
    . ~/.bashrc
fi
68
Jez

Windows 10でGit Bash 2.5.0にアップグレードしたときにも同じことが起こりました。「。bashrc」->「。bash_profile」の名前を変更して、Git Bashを再起動しました。すべてが再び正常に機能しています。

mv ~/.bashrc ~/.bash_profile
19
user932885

最新バージョンのgit for Windows(2.8.3.windows.1)は、現在.bash_profileではなく「profile」ファイルを使用しているようです。これは隠されていないので、有効なファイル名だと思います。以前は問題を引き起こしていなかったようですが、多分それは人々を混乱させました。

2
John Livermore

おそらくこの答えに少し遅れましたが、-rcfile引数の後に.bashrcファイルの場所を指定してbashを呼び出すことができます。

bash -rcfile C:\Users\name\.bashrc

PowerShellプロファイル(.ps1ファイル)の末尾にこれを追加して、Powershellがbashで自動的に開き、自分の好みに合わせて構成されるようにしました。

0
code_cowboy