#git
Вопрос:
Я пытаюсь настроить свой портативный Git для поиска дополнительных сценариев в определенной папке.
Рассмотрим этот пример древовидной структуры каталогов
-- my-portable-git
│
├───git-scripts
│ git-myscript
│ ⋮ # some more scripts
└───portable-git
⋮ # rest of files for portable git
Поскольку я не могу редактировать свою PATH
переменную env для $reasons
, можно ли добавить с помощью .gitconfig
или другими способами дополнительные пути для git
использования при вызове сценариев/команд/и т. Д.?
Ссылаясь на пример выше: можно ли сказать git
: «Эй, мерзавец, загляните также в папку ../git-scripts/
для получения дополнительных команд, пожалуйста!» без редактирования PATH
env?
Ответ №1:
ДА. Установите переменную GIT_EXEC_PATH
среды.
Видишь https://git-scm.com/book/en/v2/Git-Internals-Environment-Variables
Комментарии:
1. Интересно, но, к сожалению, у меня нет активной оболочки, в которой я мог бы изменить параметры env, возможно, я смогу взломать оболочку git, которая сначала установит env….
2. @Грубер: конечно, если вы можете вставить оболочку, вы можете вставить и ту, которая задает $PATH/вместо этого 🙂
Ответ №2:
В конце концов я выбрал быстрый пакетный сценарий, и да, то, что предложил Торек, действительно более подходит для этого решения. Работает хорошо, и при необходимости можно добавить больше путей.
:: Git wrapper to ensure this folder is included in the PATH
:: gitw.cmd
@echo off
setlocal enableextensions
set "_GITW_DIR=%~dp0"
set "PATH=%_GITW_DIR%;%PATH%"
:: just an additional echo for the passed git command, can be removed
echo CMD: %*
"pathtoyourbinarygit.exe" %*
endlocal