python - 当 git commit-msg Hook 失败时,如何恢复提交消息?

标签 python git githooks

我正在使用 git 的钩子(Hook)之一 commit-msg 来验证特定格式和内容的提交消息。

但是,每当提交消息未能通过 Hook 时,我有时会丢失消息中的一段或更多文本。

我曾尝试将其保存在某处,但我不确定如何在用户尝试修复失败的提交消息时将其恢复给用户,只有最后一条正确的提交消息显示出来。

有没有其他人处理过这个问题?你是怎么解决的?

信息:我正在使用 python 脚本进行验证。

最佳答案

提交消息存储在 .git/COMMIT_EDITMSG 中。在“失败”的提交尝试之后,您可以运行:

git commit --edit --file=.git/COMMIT_EDITMSG

或更短,例如:

git commit -eF .git/COMMIT_EDITMSG

这将在您的 $EDITOR(或您在 Git 配置中设置的编辑器)中加载错误的提交消息,以便您可以尝试修复提交消息。您还可以为上述内容设置一个别名,使用:

git config --global alias.fix-commit 'commit --edit --file=.git/COMMIT_EDITMSG'

然后使用 git fix-commit 代替。

关于python - 当 git commit-msg Hook 失败时,如何恢复提交消息?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52975103/

相关文章:

python - 如何使用python增加Word-cloud中的max_words?

git - 使用ssh克隆git仓库时出错

git - 在 GIT 推送上接收电子邮件

python - 找到包含 0 个样本 (shape=(0, 40)) 的数组,而至少需要 1 个

Python:比较字典键

python - 如何在使用 pip 安装的 Anaconda 中卸载软件包

xcode - Flutter 生成的 ios 文件版本控制

git - 当对版本控制的提交要求开发人员更改他们自己的配置时

git - Gerrit change-merged Hook

php - 同步大学小组项目从 GitHub 仓库到个人服务器的更改