如何创建一个包含 *nix $USER 变量的 Git 提交模板?

如何创建一个包含 *nix $USER 变量的 Git 提交模板?

我想在我的 git 提交消息中添加一个环境变量。最后,我想我要制作一个提交消息“模板”,其中包含提交时需要填写的几行。我尝试使用由/.git/hooks/prepare-commit-msg以下内容组成的 git hook,但是如果您因为忘记了某些内容而取消提交,git 会将其误认为您的提交消息并完成提交。

test -n "$LC_SSH_USER" && echo "Author: $USER" >> "$1"

接下来,我在我的 中找到了一个使用该[commit]部分的示例.gitconfig

[commit]
  template = .commit_template

我的内容.commit_template如下,但是简单地在模板中输入环境变量并不能达到我想要的效果。模板拉入 OK,提交取消 OK,但是 $USER 被直接插入到消息中:

Author : $USER

Reason:

Fix:

如何将环境变量插入到 git commit 中并且仍然能够取消提交?

答案1

如果它可以帮助其他人(并且@Diogenes deLight 是正确的,但这里不是讨论这个问题的最佳地点),我将其添加到.git/hooks/pre-commit。任何 shell 变量都可以在其中扩展以创建提交模板。

#!/bin/sh
echo "Author :$USER
Reason :
Issue  :
" > .commit_template

还需要这个.git/config

[commit]
  template = .commit_template

相关内容