Jul 17, 2018

Using Git within Gradle

I had a task to have a Gradle build look at the Git branch name and set a different variable based on what branch was. I could have made a system call to git but I have learned not to depend on system calls. A little searching and I found grgit and it was pretty easy:

buildscript {
    repositories {
      jcenter()
  }
  dependencies {
    classpath "org.ajoberstar:grgit:2.2.1"
  }
}
 
apply plugin: 'java'
apply plugin: "org.ajoberstar.grgit"
 
//....
 
def getWorkingBranch(){
    ext.repo = grgit.open()
 
    return ext.repo.branch.current.name
 
}

Then, naturally, I just call getWorkingBranch in my tasks when I need the branch name.

About the Author

Mike Hostetler profile.

Mike Hostetler

Principal Technologist

Mike has almost 20 years of experience in technology. He started in networking and Unix administration, and grew into technical support and QA testing. But he has always done some development on the side and decided a few years ago to pursue it full-time. His history of working with users gives Mike a unique perspective on writing software.

Leave a Reply

Your email address will not be published. Required fields are marked *

Related Blog Posts
Designing Kubernetes Controllers
There has been some excellent online discussion lately around Kubernetes controllers, highlighted by an excellent Speakerdeck presentation assembled by Tim Hockin. What I’d like to do in this post is explore some of the implications […]
React Server Components
The React Team recently announced new work they are doing on React Server Components, a new way of rendering React components. The goal is to create smaller bundle sizes, speed up render time, and prevent […]
Jolt custom java transform
Jolt is a JSON to JSON transformation library where the transform is defined in JSON. It’s really good at reorganizing the json data and massaging it into the output JSON you need. Sometimes, you just […]
Page Object Model for UI Testing