Подтвердить что ты не робот

Git bash домашний каталог, отличный от Git расширения, чем Git Bash

Если я запустил Git bash из Git Extention (CTRL + G), мой домашний каталог% USERPROFILE%, что нормально.

Если я запустил Git bash из контекстного меню папки Git repo, или если я запустил Git bash в стартовом меню, мой домашний каталог% HOME%, который отличается.

Как настроить Git bash, чтобы всегда использовать% USERPROFILE% в качестве домашнего каталога (у меня есть .ssh-папка внутри)?

Если это может помочь, на Git bash запустите с Git Ext, у меня есть:

$ echo $HOME
/c/Users/mylogin

Те же команды на Git bash выполняются напрямую:

$ echo $HOME
/h

h: - мой корпоративный домашний каталог

Что я могу сделать?

4b9b3361

Ответ 1

git bash с msysgit в его репо - это script, который вы можете редактировать, чтобы установить HOME на %USERPROFILE%.
Это по сути то, что он делает по умолчанию, за исключением случаев, когда HOME уже определен, git bash script не будет изменять это значение (но вы можете, если вы отредактируете упомянутый script).

Я подозреваю, что в вашей корпоративной среде HOME определяется сетевым диском, чтобы различные файлы конфигурации (maven, ssh,...) сохранялись на удаленном, защищенном и резервном диске.
Это объясняет, почему HOME не изменяется с помощью git bash script.
Расширение git, очевидно, не так осторожно, как первый script, и изменит/определит любое значение, которое ему нужно.


Как комментарий OP Steve B:

HOME установлен для git bash, в etc/profile:

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

Я удалил первое местонахождение кандидата, и оно работает.