/ bin и / usr / bin оба монтируются в одном месте в Git Bash - PullRequest
0 голосов
/ 12 октября 2018

Git Bash для Windows (v 4.4.19) монтирует "C:/Program Files/Git" как "/" и монтирует "C:/Program Files/Git/usr/bin" как "/bin"

Это означает, что /usr/binи /bin монтируются в одну и ту же папку Windows.Это создает проблему, потому что bash и git не распознаются, если я не добавлю /c/Program Files/git/cmd непосредственно в мою PATH.

Есть ли файл конфигурации для изменения этого?Почему одна и та же папка монтируется дважды?

Ответы [ 2 ]

0 голосов
/ 22 октября 2018

Привязка /bin к /usr/bin - это то, что в настоящее время также делается в ряде дистрибутивов Linux и Unix.Об этом вы можете прочитать здесь: https://www.freedesktop.org/wiki/Software/systemd/TheCaseForTheUsrMerge/

0 голосов
/ 16 октября 2018

Перед вызовом bash убедитесь, что для %PATH% (Windows CMD PATH) установлено значение:

set G=c:\path\to\latest\git
set PATH=%G%\bin;%G%\usr\bin;%G%\mingw64\bin
set PATH=%PATH%;C:\windows\system32;C:\windows\System32\Wbem;C:\windows\System32\WindowsPowerShell\v1.0\

В bash вы увидите сеанс, который:

То есть:

vonc@vonc:/$ ls /usr/bin|wc -l
1160
vonc@vonc:/$ ls /bin|wc -l
149

Это началось с поддержки MingW2 в 2015 , а затем и mingw-w64 проекта.

Тем не менее, /bin смонтирован на %G%\usr\bin.

Есть ли файл конфигурации, чтобы изменить это?

Да: /etc/mtab

$ cat /etc/mtab
D:/prgs/git/latest / ntfs binary,noacl,auto 1 1
D:/prgs/git/latest/usr/bin /bin ntfs binary,noacl,auto 1 1
C:/Users/vonc/AppData/Local/Temp /tmp ntfs binary,noacl,posix=0,usertemp 1 1

То есть /bin монтируется только один раз: в.

Почему одна и та же папка монтируется дважды?

Поскольку / монтируется в %G%, /usr/bin также является ссылкой (не монтируется)до %G%\usr\bin.

Git 2.5.2.2 (сентябрь 2015 г.) иллюстрирует это с выпуском 405 и commit bf980fd .(см. также PR 79 ).

...