I want to pull changes from git repo before compilation begins. I found this Gradle: how to clone a git repo in a task?, but it clones the repo instead of fetching just the changes. This could be time consuming if the git server is not on the local network or if the repo is large.
I could not find how to do git pull
using gradle or the gradle-git plugin.
You can create Exec
task and run any shell/cmd command. No extra plugin dependency required for simple tasks.
task gitPull(type: Exec) {
description 'Pulls git.'
commandLine "git", "pull"
}
Usage: gradlew gitPull
You should see smth like this:
gradlew gitPull
Parallel execution is an incubating feature.
:app:gitPull
Already up-to-date.
BUILD SUCCESSFUL
Total time: 9.232 secs
Where Already up-to-date.
is the output from git pull
command.
The following gradle script should be helpful:
import org.ajoberstar.grgit.*
buildscript {
repositories {
mavenCentral()
}
dependencies {
classpath 'org.ajoberstar:gradle-git:1.1.0'
}
}
task pull << {
def grgit = Grgit.open(dir: project.file('.'))
grgit.pull(rebase: false)
}
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With