Скрипты команд Git в Windows

У меня есть несколько команд git, которые я хотел бы автоматизировать в ограничительной среде Windows. Я ловлю себя на том, что снова и снова запускаю одни и те же команды в Git Bash.

$ git cd "R:/my/directory/repo"
$ git pull
$ git checkout "MyBranch"
$ git merge "MyOtherBranch"

а также

$ git checkout "MyBranch"
$ git add .
$ git commit -m "My commit comments"

Я хорошо разбираюсь в JScript и знаю, что он работает в моей ограничительной среде Windows, поэтому я хочу начать свой день с открытия командной строки и ввода

cscript.exe "MyGitRefreshScript.wsf" "MyBranch" "MyOtherBranch"

А потом по требованию, в течение остального дня, я могу это делать, а также использовать

cscript.exe "MyGitCommitScript.wsf" "MyBranch" "My commit comments"

Тогда я могу спокойно сидеть там с открытой командной строкой, нажимая стрелку вверх, и запускать их весь день, пока я делаю свою работу.

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

Что-то типа:

<job id="main">
    <script language="JScript">
        var sh = new ActiveXObject("WScript.Shell");
        sh.Run(Git.exe "SomeCommand" ?);

        //or

        var git = new ActiveXObject("Git");
        git.SomeCommand ???

        ...

Возможно ли это, и если да, то как? Есть ли четкая альтернатива, которая не требует установки какого-либо стороннего инструмента?

Спасибо


person o.carltonne    schedule 18.12.2014    source источник


Ответы (2)


Есть ли четкая альтернатива, которая не требует установки какого-либо стороннего инструмента?

Да, git использует оболочку bash, которую вы можете использовать в псевдониме git или в сценарии git.

Даже в Windows вы можете определить имя файла git-xxx со сценарием оболочки в нем (который будет интерпретирован bash из git).
Шебанг этого сценария (опять же, даже в Windows) будет #!/bin/bash .

В этом сценарии вы можете использовать команды git и использовать параметры оболочки ($1, $2, ...).

person VonC    schedule 18.12.2014
comment
Таким образом, сценарий bash подобен файлу .vbs или файлу .js, содержащему сценарий, написанный на VBScript или JScript? На каком языке я пишу скрипт bash? - person o.carltonne; 18.12.2014
comment
@o.carltonne язык, на котором вы бы написали скрипт bash, это... bash: en .wikipedia.org/wiki/Bash_%28Unix_shell%29. Он интерпретируется оболочкой unix, упакованной с Git для Windows (msysgit), и будет работать даже в Windows. - person VonC; 18.12.2014

Проверь это -

http://nixkb.org/2014/08/git-made-easy-command-line-scripts-to-manage-git-changes-from-linux/

Вот два скрипта, которые вы можете запустить на любой машине Linux, где git настроен для ваших локальных репозиториев.

1) Инициализировать git или вызвать gitInit.sh

2) Слить изменения в git или вызвать gitMerge.sh

person Arti Pathak    schedule 29.11.2015
comment
Ссылка не работает! - person phuzi; 05.09.2019