如何通过Gradle在Windows上执行Git命令?

时间:2015-12-18 17:52:20

标签: windows git gradle command

所以我有以下代码片段:

def getVersion = { ->
    def stdout = new ByteArrayOutputStream()
    exec {
        commandLine 'git', 'describe', '--tags'
        standardOutput = stdout
    }
    return stdout.toString().trim()
}

每当我致电getVersion()时,我都会收到以下错误:

* What went wrong:
A problem occurred evaluating root project 'ForgeWorkspace'.
> Process 'command 'git'' finished with non-zero exit value 128

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output.

BUILD FAILED

Total time: 6.442 secs

在我的MacBook Pro上,我从未遇到过这个问题,但在Windows上也是如此。非常感谢任何帮助!

2 个答案:

答案 0 :(得分:1)

@RaGe几乎是正确的。由于您确实需要使用Windows命令提示符(cmd)让操作系统在系统路径中搜索git可执行文件,因此整个git命令应作为跟随/c开关的一个参数传递(这意味着'执行命令')。

所以以下内容应该有效:

commandLine 'cmd', '/c', 'git describe --tags'

答案 1 :(得分:0)

在Windows上,commandLine的前两个参数应为cmd和/ c

//on windows:
commandLine 'cmd', '/c', 'git'...

请参阅here