19

如果我从 Git 扩展 ( CTRL+ G) 运行 Git bash,我的主目录是 %USERPROFILE%,这没关系。

如果我从 git repo 文件夹的上下文菜单运行 Git bash,或者如果我从开始菜单运行 Git bash,我的主目录是 %HOME%,这是不同的。

如何将 git bash 设置为始终使用 %USERPROFILE% 作为主目录(我有 .ssh 文件夹)?

如果有帮助,在从 Git Ext 运行 git bash 时,我有:

$ echo $HOME
/c/Users/mylogin

git bash 上的相同命令直接运行:

$ echo $HOME
/h

h:是我的公司主目录

我能做些什么 ?

4

1 回答 1

23

其 repo中随msysgit提供的 git bash是一个可以编辑的脚本,以便设置为. 它基本上是默认情况下所做的,除非已经定义,否则 git bash 脚本不会修改该值(但你可以,如果你编辑所述脚本)。HOME%USERPROFILE%
HOME

我怀疑,在您的公司环境中,HOME定义为网络驱动器,以便将各种配置文件(maven、ssh、...)存储在远程、安全和备份的驱动器上。
这可以解释为什么Git bash 脚本没有HOME改变。 Git 扩展显然不像第一个脚本那样小心,并且会更改/定义它需要的任何值。


正如OP Steve B评论的那样:

对于HOMEGit bash,设置在etc/profile

# Set up USER's home directory
if [ -z "$HOME" -o ! -d "$HOME" ]; then
  HOME="$HOMEDRIVE$HOMEPATH"
  if [ -z "$HOME" -o ! -d "$HOME" ]; then
    HOME="$USERPROFILE"
  fi
fi

我删除了第一个候选家庭位置,它可以工作。

于 2011-12-19T14:24:26.157 回答