基本上我必须获取特定的提交然后修改它的提交消息。所以cherrypick
git commit --amend
完成(nano/vi)
后,当编辑.git/COMMIT_EDITMSG
打开时,会在其间添加一些文字并保存&出口。
我尝试通过shell脚本修改nano
文件,但它不起作用。我能够修改文件,但更改没有反映到git push。 :(
所以我想在ctrl + o
编辑器中打开一个文件然后在文件之间添加几行然后保存并退出
纳米编辑器
第1步:保存(WriteOut)Enter
和
第2步:按ctrl + x
然后按
第3步:退出(退出):!wq
for vi editor
第1步::x
或shift + ZZ
或<you know how to save and exit>
vi/nano editor
我尝试了许多选项,比如通过python脚本调用#addTextHelper.sh
#!/bin/bash
ex $1 <<EOEX
:%s/$string_to_replace/$string_to_replace_with/g
:x
EOEX
#addText.sh
GIT_EDITOR=./addText_Helper.sh git commit --amend
终端但没有帮助:(。
尝试从shell脚本发送信号F2和F3用于nano编辑器,c语言不起作用。
如何在终端中自动打开这个过程然后写点东西并保存&amp;出口。
请帮我解决问题。
[[溶液]] ex for vi editor
{{1}}
答案 0 :(得分:3)
将GIT_EDITOR
环境变量指向一个脚本,该脚本会更改必要的提交消息。该脚本将获取具有当前提交消息(和Git的帮助文本)的文件的路径作为第一个参数。
使用ed在第一个空行后添加一行的示例脚本:
#!/bin/sh
ed $1 <<EOT
/^$
a
Extra text goes here.
.
wq
EOT
示例调用:
GIT_EDITOR=./patch-commit-message.sh git commit --amend