2017-08-01 10 views
0

.gitsubmoduleファイルに含まれるサブモジュールを使ってgit repoを取得するJenkinsジョブがあります。私がレポを最初に引っ張ったときに問題はなかったが、サブモジュールにいくつかの変更を加えた後、Jenkinsは更新されたサブモジュールのレポを引き出さなくなった。それはメインリポジトリで行われた変更を引き出すだけです。Jenkins - サブモジュールパス 'submodule-project'で現在のorigin/devリビジョンを見つけることができません

だから私は、 "枝の先端に更新追跡サブモジュール"オプションを有効にしようとしている: enter image description here

をしかし、私は次のエラーを取得:

> /usr/bin/git submodule update --init --recursive --remote submodule-project 
FATAL: Command "/usr/bin/git submodule update --init --recursive --remote submodule-project" returned status code 1: 
stdout: 
stderr: fatal: Needed a single revision 
Unable to find current origin/dev revision in submodule path 'submodule-project' 

hudson.plugins.git.GitException: Command "/usr/bin/git submodule update --init --recursive --remote submodule-project" returned status code 1: 
stdout: 
stderr: fatal: Needed a single revision 
Unable to find current origin/dev revision in submodule path 'submodule-project' 

    at org.jenkinsci.plugins.gitclient.CliGitAPIImpl.launchCommandIn(CliGitAPIImpl.java:1924) 
    at org.jenkinsci.plugins.gitclient.CliGitAPIImpl.launchCommandWithCredentials(CliGitAPIImpl.java:1643) 
    at org.jenkinsci.plugins.gitclient.CliGitAPIImpl.access$300(CliGitAPIImpl.java:71) 
    at org.jenkinsci.plugins.gitclient.CliGitAPIImpl$7.execute(CliGitAPIImpl.java:1097) 
    at org.jenkinsci.plugins.gitclient.RemoteGitImpl$CommandInvocationHandler$1.call(RemoteGitImpl.java:153) 
    at org.jenkinsci.plugins.gitclient.RemoteGitImpl$CommandInvocationHandler$1.call(RemoteGitImpl.java:146) 
    at hudson.remoting.UserRequest.perform(UserRequest.java:120) 
    at hudson.remoting.UserRequest.perform(UserRequest.java:48) 
    at hudson.remoting.Request$2.run(Request.java:326) 
    at hudson.remoting.InterceptingExecutorService$1.call(InterceptingExecutorService.java:68) 
    at java.util.concurrent.FutureTask.run(FutureTask.java:266) 
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) 
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) 
    at java.lang.Thread.run(Thread.java:748) 
    at ......remote call to IS-MEAN_Slave(Native Method) 
    at hudson.remoting.Channel.attachCallSiteStackTrace(Channel.java:1416) 
    at hudson.remoting.UserResponse.retrieve(UserRequest.java:220) 
    at hudson.remoting.Channel.call(Channel.java:781) 
    at org.jenkinsci.plugins.gitclient.RemoteGitImpl$CommandInvocationHandler.execute(RemoteGitImpl.java:146) 
    at sun.reflect.GeneratedMethodAccessor442.invoke(Unknown Source) 
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 
    at java.lang.reflect.Method.invoke(Method.java:606) 
    at org.jenkinsci.plugins.gitclient.RemoteGitImpl$CommandInvocationHandler.invoke(RemoteGitImpl.java:132) 
    at com.sun.proxy.$Proxy65.execute(Unknown Source) 
    at hudson.plugins.git.extensions.impl.SubmoduleOption.onCheckoutCompleted(SubmoduleOption.java:107) 
    at hudson.plugins.git.GitSCM.checkout(GitSCM.java:1188) 
    at hudson.scm.SCM.checkout(SCM.java:485) 
    at hudson.model.AbstractProject.checkout(AbstractProject.java:1276) 
    at hudson.model.AbstractBuild$AbstractBuildExecution.defaultCheckout(AbstractBuild.java:607) 
    at jenkins.scm.SCMCheckoutStrategy.checkout(SCMCheckoutStrategy.java:86) 
    at hudson.model.AbstractBuild$AbstractBuildExecution.run(AbstractBuild.java:529) 
    at hudson.model.Run.execute(Run.java:1738) 
    at hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:43) 
    at hudson.model.ResourceController.execute(ResourceController.java:98) 
    at hudson.model.Executor.run(Executor.java:410) 
Finished: FAILURE 

私を。

[submodule "submodule-project"] 
    path = submodule-project 
    url = <path-to-submodule-project>.git 
    branch = dev 

任意のアイデアはどのようにこの問題を解決するために:gitmoduleファイルには、次のようになりますか?

注:.gitmodulesファイルの構文の参照が多数見つかりませんでしたが、私はbranchオプションを正しく使用していると思います。間違いを指摘してください。

答えて

0

サブモジュールの更新中に参照用のレポのパスを指定する必要があると思います。

関連する問題