Gradle第16课:与 Git 和 Jenkins 的结合使用

本文介绍了如何将Gradle与Git和Jenkins结合使用。通过Gradle实现Git代码克隆并显示提交日志,同时展示了在Jenkins中配置Gradle任务以实现持续集成的过程。
摘要由CSDN通过智能技术生成

需要准备

  • 一个熟悉的 IDE 开发工具
  • JDK 7及以上
  • Gradle 3.2以上
  • Docker 17
  • Git 2.13
  • Jenkins

与 Git 的结合使用

Git 是一个开源的分布式版本控制系统,可以有效、高速的处理从很小到非常大的项目版本管理。所以现在基本上很多的公司都在使用 Git 进行项目的代码管理,而 Git 的代码 clone 可以通过命令行现实现,不过今天我在这里介绍的是一种通过 Gradle 代码实现的,它不仅能进行代码的 clone,还能显示出最后提交的日志信息,方便我们构建工程的时候知道最近代码仓库中有哪些改动。其具体的代码实现如下:

        import org.ajoberstar.grgit.*

// gradle-git插件
buildscript {
  repositories {
    mavenCentral()
  }
  dependencies {
    classpath 'org.ajoberstar:gradle-git:1.1.0'
  }
}

// 克隆代码
def cloneToDir = System.properties['cloneToDir'];
def destination = file(cloneToDir)
if(destination.exists()){
    destination.deleteDir();
}

def gitBranch = System.properties['gitBranch'];
def logNums = System.properties['logNums'];

ext.grgit = Grgit.clone(dir: destination, uri: 'ssh://builder@192.168.3.181:29418/login.git', refToCheckout:'remotes/origin/'+gitBranch)
task cloneGitRepo << {
    if(!gitBranch.equals("master")){
        // checkout出指定的分支
        grgit.checkout(branch:gitBranch,orphan: true)
    }

    grgit.pull()

    //输出近100条提交日志
    def history = grgit.log(maxCommits: logNums.toInteger())
    history.each{commit->
        println "============"+commit.committer.name+"======="+n
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值