首页 > 其他 > 详细

Jenkins 获取 Git 的提交记录(Change Log)

时间:2019-07-15 19:13:33      阅读:306      评论:0      收藏:0      [点我收藏+]

工作中用 Jenkins 做 iOS 和 Android 的持续集成,之前实现的是当 git 有新代码提交的时候,就会自动编译并上传安装包到蒲公英,然后自动发送QQ群通知或者讨论组通知给相关小伙伴,方便其他小伙伴直接下载测试。但也有一点不方便的是,其他人下载还不能明确的知道这一版更新了什么。考虑到因为每次 git 的代码提交会说明这次提交修改了什么,所以就打算直接把获取 git 的提交记录显示在最终的编译完成的通知中,直观的显示给每个人。

最后收到通知的效果基本是下面这个样子:

技术分享图片

 

技术分享图片
 

由于 Jenkins 并没有官方的插件来做这个事,只能找现成的已经有的开源代码自己编译插件,最终也终于找到了。

那就直接开始做了。

下载源代码

首先,这个插件的源码地址是:https://github.com/daniel-beck/changelog-environment-plugin

下载源码。

安装 Maven

然后编译,编译需要 Maven,如果没有装Maven,下面有一个简单的安装步骤,如果安装过程中出现问题,还请自行谷歌解决。

下载地址:https://maven.apache.org/download.cgi

解压到某个目录下,例如:

/Users/XXX/apache-maven-3.5.0

然后

$ vi ~/.bash_profile

添加 Maven 相关环境

# Maven

export M2_HOME=/Users/sunbinhua/apache-maven-3.5.0

export PATH=$PATH:$M2_HOME/bin

保存退出,输入命令让 Maven 生效

$ source ~/.bash_profile

输入 mvn -v 来检查 Maven 是否生效。

编译源码生成 hpi

cd 到 changelog-environment-plugin-master 下,执行

$ mvn verify

经过比较长的时间,会在changelog-environment-plugin-master/target/下有个changelog-environment.hpi文件这就是我们需要的插件。

然后把生成的插件上传到 Jenkins。

使用方法

在项目的配置中,构建环境下面多了一项  Add Changelog Information to Environment

选中后,多了三项:Entry Format、File Item Format、Date Format

如下图:

 
技术分享图片
 技术分享图片

 

Entry Format中添加 %3$s(at %4$s via %1$s),参数分别为ChangeLog内容,时间,提交人。

Date Format中添加 yyyy-MM-dd HH:mm:ss 就是时间格式。

在命令行中使用SCM_CHANGELOG获取即可,比如下图是我使用的地方

 技术分享图片

 

技术分享图片




转自:https://www.jianshu.com/p/f03fc1bf5783

Jenkins 获取 Git 的提交记录(Change Log)

原文:https://www.cnblogs.com/cangqinglang/p/11190603.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!