如何自动执行需要提交消息的 git 任务?

如何自动执行需要提交消息的 git 任务?

我正在编写一个脚本来自动执行 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

相关内容