通过提供身份验证

时间:2016-01-11 07:13:23

标签: gradle

我想在我的系统中克隆一个私有存储库。我可以使用:

克隆公共回购
def myrepo = org.ajoberstar.grgit.Grgit.clone(dir:'', uri:'')

但是在私人仓库的情况下,我需要提供克隆的凭据。我已完成此link,但此处提供的属性如ForceHardcoded在我的gradle中不可用。所以,我无法使用这里给出的属性。

我可以使用以下属性:

org.ajoberstar.grgit.auth.AuthConfig.FORCE_OPTION
org.ajoberstar.grgit.auth.AuthConfig.USERNAME_OPTION
org.ajoberstar.grgit.auth.AuthConfig.PASSWORD_OPTION

如果我给这些值任何值,我会收到错误无法为最终字段赋值 任何人都可以帮助认证部分吗?

我正在使用依赖org.ajoberstar:grgit:1.3.0

1 个答案:

答案 0 :(得分:1)

您提供的链接明确指出需要使用系统属性来传递适当的设置。

所以你需要运行gradle通过命令行传递所有属性。假设这是build.gradle文件:

buildscript {
   repositories {
      mavenCentral()
   }
   dependencies {
     classpath 'org.ajoberstar:grgit:1.3.0'
   }
}

task cloneRepo << {
   org.ajoberstar.grgit.Grgit.clone(dir: '', uri: '<link to private repo>')
}

使用以下命令运行:

gradle cloneRepo -Dorg.ajoberstar.grgit.auth.username=your_username -Dorg.ajoberstar.grgit.auth.password=your_pass -Dorg.ajoberstar.grgit.auth.force=sshagent