在我们的工作流程中,不会“直接”提交到主分支。主分支仅接收来自 Pull 请求的合并。
我们可以将每次合并视为添加到主分支的新功能。
因此,我想获得一个合并到 master 中的列表,作为一种可视化随着时间的推移添加到产品中的功能块的方式。
git 或 Github API 是否公开此查询,或者我是否必须解析原始提交?
我使用以下脚本:
git log main --first-parent --merges \
--pretty=format:"%h %<(10,trunc)%aN %C(white)%<(15)%ar%Creset %C(red bold)%<(15)%D%Creset %s"
解释每个论点:
-
main
:您的主要分支的名称。可以省略,在这种情况下将使用当前分支。
-
--first-parent
:跳过合并分支的提交。这会删除某人合并的条目master
进入他们的分支。
-
--merges
:仅显示“合并提交”(提交超过 1 个父级)。如果您想看到对主分支的直接提交,请忽略此参数。
-
--pretty-format
: applies the following formatting:
-
%h
:提交短哈希;
-
%<(10,trunc)%aN
:作者姓名,截断为 10 个字符;
-
%<(15)%ar
:相对提交时间,填充为 15 个字符;
-
%<(15)%D
:标签名称,也填充为 15 个字符;
-
%s
:提交消息的第一行。
结果还是很让人满意的:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)