【发布时间】:2018-02-03 10:14:12
【问题描述】:
不仅主要更改可能是安装的依赖项,而且所有更改都在发布之前没有一一检查?
【问题讨论】:
-
在此过程中,您可以使用稍后可以搜索的内容标记那些重要的提交。
标签: github gitlab git-commit git-diff
不仅主要更改可能是安装的依赖项,而且所有更改都在发布之前没有一一检查?
【问题讨论】:
标签: github gitlab git-commit git-diff
由于 Git 不知道哪些提交对您重要,因此您必须首先定义自己的一套关于如何编写提交消息的准则/格式,然后您可以使用这些准则/格式稍后可以轻松区分为特定开发阶段所做的所有提交。
例如:
然后,一旦所有分支都合并到主分支(假设它是 develop),检查 develop 分支并使用git log --grep=<PATTERN> 识别特定的一组提交。
例如,如果您只需要错误修复提交,请执行以下操作:
git log --grep="bugfix"
这将显示提交消息中带有“bugfix”的所有提交。
如果您只需要特定时期的提交,您可以使用--since=<date> 选项:
git log --since="2017-06-01" --grep="bugfix"
如果您想要一个格式化列表(我假设您可以轻松地输出到某种发行说明),您可以使用--format=<format> 选项:
git log --since="2017-06-01" --grep="bugfix" --format="(%ci) %h : %s"
上面的命令会给你这样的东西:
(2017-06-18 18:26:36 +0800) 63f330f : [bugfix] prevent crash when dialog is sent to background (2017-07-01 10:03:40 +0800) cdcbd91 : [bugfix] remove extra row at the end of the list
您可以从完整的git log docs 中查看other format options。
基本上,这完全取决于您的提交消息格式。
作为提示,您可以考虑使用 commit.template 来更轻松地格式化您的提交消息。
commit.template如果您将此设置为系统上文件的路径, 当您提交时,Git 将使用该文件作为默认消息。为了 例如,假设您在
~/.gitmessage.txt创建了一个模板文件 看起来像这样:
subject line
what happened
[ticket: X]
【讨论】: