it-swarm.com.ru

Как запустить Git Bash из командной строки DOS?

Я надеюсь, что это простой вопрос, но я пока не смог найти ответ. Я хотел бы запустить Git Bash из командного файла DOS. Вот что я попробовал до сих пор:

  1. Запустил Git Bash из Win 7, кнопка "Пуск"
  2. Использовал CTRL + ALT + DEL, чтобы идентифицировать процесс как "sh.exe"
  3. Запустил sh.exe из командного файла командой start

    start sh.exe
    

Однако это не запускает полную среду Git Bash. У Git Bash обычно есть "MINGW32" в строке заголовка, но sh.exe имеет полный путь к ... Git\bin\sh.exe. Мне кажется, что есть некоторые наложения или зависимости, о которых я не знаю, возможно, которые также должны быть загружены (извлечены? Импортированы?).

Это был один из лучших результатов, которые я нашел при поиске в Интернете, но он не имеет для меня полного смысла, и я не уверен, применимо ли это именно к моей ситуации:

Запуск git из строки Windows Cmd: где находятся ключевые файлы?

Я новичок в мире пакетных скриптов для DOS.

80

Если вы хотите запустить из командного файла:

  • для х86

    start "" "%SYSTEMDRIVE%\Program Files (x86)\Git\bin\sh.exe" --login
    
  • для х64

    start "" "%PROGRAMFILES%\Git\bin\sh.exe" --login
    
105
Endoro

Я не совсем уверен, что вы имеете в виду под "полной средой Git Bash", но я получаю Nice Prompt, если я это сделаю

"C:\Program Files\Git\bin\sh.exe" --login

В PowerShell

& 'C:\Program Files\Git\bin\sh.exe' --login

переключатель --login заставляет оболочку выполнить оболочку входа файлы запуска .

37
Klas Mellbourn

Я предпочитаю использовать git-bash.exe вместо sh.exe.

start "" "%ProgramFiles%\Git\git-bash.exe" -c "tail -f /c/Windows/win.ini"

Вы можете прекратить закрывать окно при вызове /usr/bin/bash --login -i в конце;

start "" "%ProgramFiles%\Git\git-bash.exe" -c "echo 1 && echo 2 && /usr/bin/bash --login -i"

Примечание: я не уверен, что это хороший способ :)

20
kujiy
start "" "%SYSTEMDRIVE%\Program Files (x86)\Git\bin\sh.exe" --login -i

Git Bash откроется.

3
user3616334

Я предпочитаю помещать git в переменную окружения и просто вызывать

c:\Users\myname>sh
or 
c:\Users\myname>bash

Шаги для создания переменной среды (Win7)

  • На рабочем столе щелкните правой кнопкой мыши значок "Компьютер".
  • Выберите Свойства из контекстного меню.
  • Нажмите на ссылку Расширенные настройки системы.
  • Нажмите Переменные среды.
  • В разделе Системные переменные (или пользовательские переменные) нажмите кнопку new, введите имя переменной как GIT_HOME, значение как; для меня это c:\tools\git
  • найдите переменную среды PATH и выберите ее. Нажмите Изменить. Если переменная среды PATH не существует, нажмите New.
  • В окне Изменить системную переменную (или новую системную переменную) добавьте к выходному значению ;%GIT_HOME%/bin;%GIT_HOME%;. Нажмите ОК. Закройте все оставшиеся окна, нажав ОК.
  • откройте новое окно командной строки и просто введите sh.exe or sh or bash.exe or git-bash
3
old-monk

https://stackoverflow.com/a/33368029/15789

Я разместил ответ здесь.

Откройте командное окно Windows и выполните этот скрипт. Если в вашем рабочем каталоге произошли изменения, он откроет терминал bash в вашем рабочем каталоге и отобразит текущее состояние git. Он сохраняет окно bash открытым, вызывая exec bash.

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

2
RuntimeException

Я использовал информацию выше, чтобы помочь создать более постоянное решение. Следующее создаст псевдоним sh, который вы можете использовать для открытия Git Bash:

echo @start "" "%PROGRAMFILES%\Git\bin\sh.exe" --login > %systemroot%\sh.bat
2
dpate

Ответ Эндоро устарел, и я не могу комментировать;

# if you want to launch from a batch file or the command line:

start "" "%ProgramFiles%\Git\bin\sh.exe" --login
0
ThaJay