Gradle,检查Git分支是否存在

时间:2014-11-18 19:08:40

标签: git gradle

不知怎的,我被扔进了Gradle的世界......不知道它,不喜欢它......我是.Net网络开发者,他们是谁扔了一个mac并告诉我要成为一名开发工程师(我需要继续阅读大写的闪烁标志)...所以请在这里愚蠢地解决我的问题......

task createBranch(type:Exec, dependsOn: cloneRepo) {
    def branch = "Projects/" + ant.svnprojectversion + "/" + ant.bundleidentifier
    def branchPath = new File(branch)

    commandLine "git", "checkout", "develop"
    commandLine "git", "branch", "-d", branchPath
    println 'Delete Branch'

    //commandLine "git", "checkout", "-b", branchPath
    //println 'Create new local branch at' + branchPath
}

我也是Git的新手...我需要以某种方式检查本地"分支"已经存在。如果它没有,我需要创建它,我已经知道该怎么做,否则,我需要做其他事情,不太确定会是什么,但这是一个单独的问题。

那么,我该如何检查分支是否已经存在?我知道在git中我可以执行git show-branch,但我不知道如何从gradle中的commandLine获取响应。我试图不使用插件,因为我已经走了这条路,但由于我缺乏经验,很可能没有成功。还有另外一种方法吗?

1 个答案:

答案 0 :(得分:0)

在gradle文档中找到并阅读有关EXEC的更多信息后,http://www.gradle.org/docs/current/dsl/org.gradle.api.tasks.Exec.html。我找到了一个名为" ignoreExitValue"的设置,当设置为true时,将忽略命令行错误并继续按顺序运行所有gradle任务。因此,我使用它来创建新分支并在分支已经存在时忽略错误,然后下一个任务将签出分支。在我确定这是一个好的解决方案之前,我不会将此标记为正式答案。另外,我也可以在gradle doc中使用其他一些设置。