在 GIT 中的 Rep. 中生成发行说明

Posted

技术标签:

【中文标题】在 GIT 中的 Rep. 中生成发行说明【英文标题】:Generating release notes in Rep. in GIT 【发布时间】:2013-08-02 08:18:55 【问题描述】:

我有一个存储库,我想在其中提及每个更改、发行说明和日志文件。

如何生成这些文件?

【问题讨论】:

你想要一些东西来生成日志文件和发行说明,或者你想问如何将它们添加到 git。为什么这有一个 C++ 标签? @doctorlove 回答你:我想生成日志文件/发行说明。 @doctorlove C++ 标签:因为我的项目是c++ 【参考方案1】:

如果您希望创建构建说明,您可以使用

git log LAST_TAG..THIS_TAG

如果你的提交有 JiraID 之类的东西或你能做的任何事情

git log --grep JiraID LAST_TAG..THIS_TAG
然后以任何方式解析它。

【讨论】:

那么,使用 GIT 命令是处理这一切的最佳方式吗?【参考方案2】:

您可以使用简单的 bash 脚本来生成 ReleaseNotes.txt。 只需将脚本复制粘贴到代码的结帐目录并运行它。

#!/bin/bash
#This script will generate the release notes from the commits
#It will discard prints oF automatic Merges and Pull Requests commits. 
#It will show all the Commits date wise and sorted

DATE=
git log --pretty=format:"%ad || %h || %s || Author:%an " --date=short | sort -r | while read line
do
temp=`echo $line | egrep -v '(Automatic merge from|Merge pull request|Merge conflict from|Resolve Conflict From)'`
if [ "$temp" = "" ]
then
    continue
else
    NEWDATE=`echo $temp |  awk  'print $1'`
    if [ "$NEWDATE" = "$DATE" ]
    then
        echo $temp | awk '$1="";$2="";print' >> releaseNotes.txt
    else
        echo >> releaseNotes.txt
        DATE=$NEWDATE
        echo `date --date=$DATE +%d-%B-%Y` >> releaseNotes.txt
        echo $temp | awk '$1="";$2="";print' >> releaseNotes.txt
    fi
fi
done

【讨论】:

以上是关于在 GIT 中的 Rep. 中生成发行说明的主要内容,如果未能解决你的问题,请参考以下文章

在使用 Gradle-Git-Artifactory 堆栈的 Java 项目中存储发行说明的位置

如何在 bitbucket 中创建发行说明?

在 git bash 中生成 SSH 密钥,我无法获取 git 代理

MonoTouch 6.0.8 发行说明中的​​“运行时蹦床”是啥意思?

从使用场景学Git

如何在 Linux 中生成 glut .so 文件