我怎样才能在gradle这个当前的Git分支?(How can I get the current

2019-08-17 03:52发布

我正在写一个任务来部署应用服务器。 不过,我想这个任务只运行如果我当前的git分支是主分支。 我怎样才能得到当前的git分支?

gradle-git方法:

我知道有一个gradle这个-git的插件 ,有一个方法getWorkingBranch()的任务下GitBranchList ,但只要我尝试执行

task getBranchName(type: GitBranchList) {
   print getWorkingBranch().name
}

我得到一个“任务还没有执行”错误。 我看了看源和当没有分支集,它抛出这个错误。 这是否意味着此方法不执行完全是我想它呢? 我需要的地方设置分支机构?

Answer 1:

不,这并不意味着该分支未设置。 这意味着任务还没有真正执行呢。 你现在要做的是要求在配置封闭的方法,而你可能要执行的任务后,调用它。 尝试改变你的任务是:

task getBranchName(type: GitBranchList) << {
    print getWorkingBranch().name
}

随着<<要添加一个doLast,任务已经执行之后将被执行。



Answer 2:

你也能够得到git branch name没有插件。

def gitBranch() {
    def branch = ""
    def proc = "git rev-parse --abbrev-ref HEAD".execute()
    proc.in.eachLine { line -> branch = line }
    proc.err.eachLine { line -> println line }
    proc.waitFor()
    branch
}

请参阅: 摇篮&GIT:如何将您的分支映射到一个部署配置文件



文章来源: How can I get the current git branch in gradle?
标签: git gradle