Как я могу узнать параметры командной строки для git-bash.exe?

48

Видимо мой гугл-фу отстой ...

Я знаю это из других сообщений StackExchange:

--cd-to-home    # Change directory to home
--cd=<path>     # Change directory to <path>
-i              # ?
-c              # Run command, but --command doesn't work/exist

Где я могу найти полный список параметров для git-bash.exe (эмулятор термина)? Я нашел их для mintty [ 1 ], но они не подходят для git-bash.exe ...


Обновить:

Так git-bash.exeчто, похоже, это простая оболочка, которая сначала анализирует --cd...параметры, а затем запускает

usr\bin\mintty.exe --icon git-bash.exe,0 --exec "/usr/bin/bash" --login -i <other arguments>

или похожие. Вот почему только --cd..параметры bash анализируются правильно, а не mint.

Если вы хотите использовать другие параметры из mintty, вы должны использовать аналогичную команду вместо того, чтобы пытаться сделать это с помощью git-bash.exe . Например:

usr\bin\mintty.exe --icon git-bash.exe,0 --window full --exec "/usr/bin/bash" --login -i -c "echo 'Hello World!'; read"
816-8055
источник
Вы пытались начать с help? Если это работает как git под linux из командной строки, вы можете запросить git --help -aполный список команд.
Хастур
Повтор
команде gitbash
1
git-bash.exe - это эмулятор терминала (на основе mintty), который содержит набор стандартных команд, таких как lsили git(на основе msys). Я знаю, как получить параметры для этих команд, я ищу параметры для эмулятора терминала. Я тоже пытался, git-bash.exe --helpи git-bash.exe /?оба ничего не показывают.
816-8055
4
@DavidPostill не дурак - здесь запрашиваются параметры командной строки для команды вызова оболочки
gt6989b
3
Возможно, стоит перенести ваши изменения в ответ и пометить его как ответ.
Дамблдад

Ответы:

12

Правильно, нет списка справки по параметрам командной строки для git-bash.exe. Я провожу некоторое время, ища их сам, и нет никакой надлежащей документации на это. Похоже, это оболочка для bin / sh.exe. Если вам действительно нужно сделать больше, я рекомендую вместо этого посмотреть справочную информацию для sh.exe.

Arujei
источник
3
Ах да, это кажется точным для таких опций, как -c, -iи --loginт. Д. Вот онлайн-справочная страница . В основном мне было интересно, что -iделает этот вариант. --cd-to-homeи хотя --cdони не являются shкомандами ( minttyтоже), так что, я думаю, они были добавлены для удобства и интересно, есть ли еще ... PS: есть также C: \ Program Files \ Git \ usr \ bin \ mintty.exe
816-8055
17

Я нашел этот коммит с 2015 года, который представил новые параметры командной строки: https://github.com/git/git/commit/ac6b03cb4197311b055dc5f46ab10bf37c591ae6

Вот список из описания коммита:

--command=<command-line>::
    Executes `<command-line>` instead of the embedded string resource

--[no-]minimal-search-path::
    Ensures that only `/cmd/` is added to the `PATH` instead of
    `/mingw??/bin` and `/usr/bin/`, or not

--[no-]needs-console::
    Ensures that there is a Win32 console associated with the spawned
    process, or not

--[no-]hide::
    Hides the console window, or not

Вы можете прочитать полную информацию в URL выше.

Меир Коэн
источник
0

Вот командная строка, которую вы нашли при запуске git-bash.exe(на 2.8.1)

usr\bin\mintty.exe -o AppID=GitForWindows.Bash -o RelaunchCommand="C:\Git\git-bash.exe" -o RelaunchDisplayName="Git Bash" -i /mingw32/share/git/git-for-windows.ico /usr/bin/bash --login -i
Виктор Петит
источник