我为 git 设置了一个提交模板,我想在其中包含当前分支的名称。我通常将分支设置为 bug id,它会帮助我填写样板文件,例如:
Bug : $BUG
如何使用 git 注释模板执行此类替换?
我可能只会使用prepare-commit-msg http://git-scm.com/docs/githooks#_prepare_commit_msg挂钩将其添加到文件中。从(链接的)联机帮助页:
在准备默认日志消息之后、启动编辑器之前,git commit 会立即调用此挂钩。
它需要一到三个参数。第一个是包含提交日志消息的文件的名称。第二个是提交消息的来源... [消息、模板、合并、压缩或提交] ...
如果退出状态非零,git commit 将中止。
挂钩的目的是就地编辑消息文件......
您可以使用以下命令获取当前分支git symbolic-ref HEAD
.
您可以完全绕过模板,并让钩子在前面/插入/附加分支名称。最简单的情况,追加,脚本只是一个shebang行,然后git symbolic-ref HEAD >> "$1"
。如果您想嵌入它,请使用您最喜欢的方法 - 最易读的方法是将原始内容移到一边,编写并附加,但注释中链接的方法当然也有效。
如果您更喜欢使用带有占位符的模板,您可以执行类似的操作sed -i "s/Bug : \$BUG/BUG : $(git symbolic-ref HEAD)/" "$1"
。我相信您可以想象很多其他变化。
您可能希望对某些类型的提交(第二个参数)抑制此行为,或者甚至仅在第二个参数是“模板”时才打开它(如果您使用的是样板替换方法)。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)