【问题标题】:How to sync Git commit message, tag message and the CHANGELOG如何同步 Git 提交消息、标记消息和 CHANGELOG
【发布时间】:2013-12-06 23:55:41
【问题描述】:

我想知道处理上述问题的最佳做法。我为我的项目保留了一个变更日志,我更新了有关变更的详细信息。我还在提交消息中添加了摘要,并在版本标签中添加了类似的消息。但是,例如,变更日志的摘要、提交消息和标记消息之间有什么区别?


变更日志

v1.0.0 - 添加了这个那个,然后改变了这个。

  • 更改 1
  • 更改 2
  • 换三个什么的

git commit -am "..."

添加了这个那个,然后改变了这个。


git tag v1.0.0 -m "..."

v1.0.0 - 添加了这个那个,然后改变了这个。


【问题讨论】:

    标签: git git-commit changelog


    【解决方案1】:

    标签消息可以代表更改的摘要,而不是像提交那样的特定步骤。
    变化发生在两个标签之间。

    实际上,如果您的提交消息写得很好,您可以从中提取您的更改日志:请参阅“Very Easy Changelogs with Git

    git log 1.0.0...1.1.0 --no-merges --pretty=format:'<li> %s &mdash; %cn &bull; <a href="http://github.com/<username>/<repo>commit/%H" target="_blank">%h</a></li>'
    

    这可以生成类似于http://mun.ee/Changelog 的更改日志 HTML 页面。
    这样,您不必版本化和维护单独的 ChangeLog.md 文件。


    注意:从 git 2.0.x/git 2.1 (Q3 2014) 开始,标签的名称将成为默认提示消息的一部分。
    commit d78f340(mirabilos)

    builtin/tag.c:在消息编辑器中显示标签名称以提示

    在交互编辑过程中显示即将添加给用户的标签名称。

    【讨论】:

    • @MagnusBack 感谢您推荐--no-merges 选项。我已将其包含在答案中。
    猜你喜欢
    • 2012-01-11
    • 2012-02-03
    • 1970-01-01
    • 2021-03-06
    • 2019-10-25
    • 2011-09-07
    • 1970-01-01
    • 1970-01-01
    • 2011-01-18
    相关资源
    最近更新 更多