1

Я пишу скрипт для автоматизации задачи Git. Делая это вручную, есть несколько моментов, когда git открывает vim для редактирования сообщения коммита, и мне нужно набрать :wq . Есть ли способ предварительно отправить эти нажатия клавиш из моего скрипта, но только если vim открывается? В качестве альтернативы, есть ли способ избежать открытия vim?

Я использую tcsh.

1 ответ1

2

Вы можете просто не открывать Vim.

Одним из вариантов для этого является использование --message=<message> (или -m <message> , для краткости) для git subtree pull . Недостатком является то, что вы не можете использовать сообщение по умолчанию, предоставляемое git, и вместо этого должны придумать собственное. Плюс в том, что это должно работать практически везде, где git требуется сообщение коммита.

Другой вариант , который делает использовать сообщение по умолчанию, чтобы изменить "редактор" , что мерзавец открывает кошку. Просто не забудьте изменить его сразу после:

git config --local core.editor /path/to/cat
git subtree pull --prefix foo/bar/path repo branch --squash
git config --local core.editor /path/to/vim-or-other-editor

Преимуществом этого является то, что вы можете использовать сообщение по умолчанию, предоставляемое git. Недостатком является то, что это не будет работать, если сообщение о коммите по умолчанию пустое, как это обычно бывает при выполнении простого git commit .

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .