我正在编写一个脚本来自动执行 Git 任务。手动执行此操作时,有几个点 git 打开 vim 来编辑提交消息,我必须输入:wq
。有没有办法从我的脚本预先发送这些击键,但前提是 vim 打开?或者,有没有办法从一开始就避免打开 vim?
我正在使用 tcsh。
答案1
你首先可以避免打开 Vim。
一个选项是使用--message=<message>
(或-m <message>
简称 )选项git subtree pull
。缺点是您不能使用 git 提供的默认消息,而必须自己想出一个。优点是这应该适用于 git 需要提交消息的任何地方。
另一个选择是做使用默认消息是将 git 打开的“编辑器”更改为 cat。只需记住在之后立即将其改回:
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
。