【问题标题】:Mercurial: How can I change default tag message template?Mercurial:如何更改默认标签消息模板?
【发布时间】:2022-09-22 21:10:08
【问题描述】:

我想在提交消息中使用一些前缀标签,以便在查看修订日志时快速识别提交类型,并能够快速过滤日志。

我打算使用的一些前缀是 (标签:, 合并:, 测试:, 稳定:, TRUE-UP:, FIX():, FEATURE():,可能还有其他人)。

此外,对于标签,我想将默认消息更改为更具描述性,如下所示:

TAG: Added tag v3.4 for e90d0caa766 created on 2022-09-22 01:05:00
Applied fix for foobar.

对于标记,Mercurial 似乎没有打开编辑器,所以我可以检查标记消息,所以我调试它的尝试很乏味。

我尝试将以下内容添加到我的 repo hgrc 配置文件中:

[committemplate]
changeset.tag = \"TAG: Added tag {tag} for {node|short} created on {date|isodate}\\n{desc}\"

我也玩过[hooks] 部分和pretag 钩子。

此外,我在命令行上尝试过各种格式调整:

hg tag -r . -m \'TAG: Added tag {tag} for {node|short} created on {date|isodate}\\n{desc}\' test4

对于上面的命令行尝试,这些都不会填充消息中的模板字段,而对于 hgrc 配置文件中的其他尝试,这不会改变提交消息,甚至不会出错。

我在这里想念什么?

    标签: version-control mercurial config customization tagging


    【解决方案1】:
    1. [committemplate] 工作,如果它被添加到 hgrc(在 repo 级别尝试,而不是全局尝试),但不知何故不是预期的形式(见下文)
    2. 请注意:如果您将使用“添加标签”措辞,你,也许想将修改消息的区域限制为只添加标签(hg tag可以消除标签也,顺便说一句)changeset.tag.add

      我的测试用例

      • 汞 6.2.2
      • 全局配置中没有重新定义的提交模板
      • 为 changeset.tag 设置一行代码,然后为 changeset.tag.add 设置一行代码
      • 在 CLI 中标记 pure(由于 THG 完全失败)

      一些日志

      普通 hg tag -r 0 0.1 + hg tag --remove 0.1changeset.tag 一起使用重新定义(hg 使用的默认消息)

      changeset:   2:006c40256d9b
      user:        lazybadger
      date:        Thu Sep 22 17:05:15 2022 +0500
      summary:     Removed tag 0.1
      
      changeset:   1:1927f74a0ec0
      user:        lazybadger
      date:        Thu Sep 22 17:02:46 2022 +0500
      summary:     Added tag 0.1 for changeset 8385f66bee57
      

      使用 -e 附加选项进行标记(注意:在编辑器中手动插入标记,{tag}{tags} 不会在 changeset.tag.* 文本中展开)

      changeset:   7:5aee36e13e4d
      tag:         lazybadger
      date:        Thu Sep 22 17:13:43 2022 +0500
      summary:     TAGGING: Tag 0.3 added
      ...
      changeset:   3:9a4b0a117fb1
      user:        lazybadger
      date:        Thu Sep 22 17:06:23 2022 +0500
      summary:     TAG: Tag 0.1 touched
      

    【讨论】:

      猜你喜欢
      • 2016-08-22
      • 2014-12-21
      • 1970-01-01
      • 2013-01-29
      • 2011-10-17
      • 2022-11-14
      • 2019-09-21
      • 2010-09-29
      • 2019-01-13
      相关资源
      最近更新 更多