2013-03-13 96 views
9

我正在嘗試設置我的配置項,並且創建了一個自由樣式作業,但它在下面的此日誌的git克隆步驟上失敗。我正確配置了計算機的ssh密鑰,我找不到任何問題。Jenkins + Git插件CheckoutConflictException

Using strategy: Default 
Fetching changes from 1 remote Git repository 
Commencing build of Revision 9560773cf0e8545f98c6700c44fd2f9ae31af904 (origin/master) 
Checking out Revision 9560773cf0e8545f98c6700c44fd2f9ae31af904 (origin/master) 
FATAL: Could not checkout 9560773cf0e8545f98c6700c44fd2f9ae31af904 
hudson.plugins.git.GitException: Could not checkout 9560773cf0e8545f98c6700c44fd2f9ae31af904 
    at org.jenkinsci.plugins.gitclient.JGitAPIImpl.checkout(JGitAPIImpl.java:68) 
    at hudson.plugins.git.GitAPI.checkout(GitAPI.java:208) 
    at hudson.plugins.git.GitSCM.checkout(GitSCM.java:1261) 
    at hudson.plugins.git.GitSCM.access$1200(GitSCM.java:57) 
    at hudson.plugins.git.GitSCM$4.invoke(GitSCM.java:1220) 
    at hudson.plugins.git.GitSCM$4.invoke(GitSCM.java:1196) 
    at hudson.FilePath.act(FilePath.java:865) 
    at hudson.FilePath.act(FilePath.java:838) 
    at hudson.plugins.git.GitSCM.checkout(GitSCM.java:1196) 
    at hudson.model.AbstractProject.checkout(AbstractProject.java:1353) 
    at hudson.model.AbstractBuild$AbstractBuildExecution.defaultCheckout(AbstractBuild.java:683) 
    at jenkins.scm.SCMCheckoutStrategy.checkout(SCMCheckoutStrategy.java:88) 
    at hudson.model.AbstractBuild$AbstractBuildExecution.run(AbstractBuild.java:588) 
    at hudson.model.Run.execute(Run.java:1567) 
    at hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:46) 
    at hudson.model.ResourceController.execute(ResourceController.java:88) 
    at hudson.model.Executor.run(Executor.java:237) 
Caused by: org.eclipse.jgit.api.errors.CheckoutConflictException: Checkout conflict with  files: 
Heatmaps.framework/Headers/Heatmaps.h 
Heatmaps.framework/Resources/Info.plist 
Heatmaps.framework/Versions/Current/Headers 
Heatmaps.framework/Versions/Current/Headers/Heatmaps.h 
Heatmaps.framework/Versions/Current/Heatmaps 
Heatmaps.framework/Versions/Current/Resources 
Heatmaps.framework/Versions/Current/Resources/Info.plist 
    at org.eclipse.jgit.api.CheckoutCommand.call(CheckoutCommand.java:244) 
    at org.jenkinsci.plugins.gitclient.JGitAPIImpl.checkout(JGitAPIImpl.java:64) 
    ... 16 more 
Caused by: org.eclipse.jgit.errors.CheckoutConflictException: Checkout conflict with files: 
Heatmaps.framework/Headers/Heatmaps.h 
Heatmaps.framework/Resources/Info.plist 
Heatmaps.framework/Versions/Current/Headers 
Heatmaps.framework/Versions/Current/Headers/Heatmaps.h 
Heatmaps.framework/Versions/Current/Heatmaps 
Heatmaps.framework/Versions/Current/Resources 
Heatmaps.framework/Versions/Current/Resources/Info.plist 
    at org.eclipse.jgit.dircache.DirCacheCheckout.doCheckout(DirCacheCheckout.java:411) 
    at org.eclipse.jgit.dircache.DirCacheCheckout.checkout(DirCacheCheckout.java:391) 
    at org.eclipse.jgit.api.CheckoutCommand.call(CheckoutCommand.java:240) 
    ... 17 more 

回答

9

我在安裝新的Jenkins 1.505和使用git client plugin 1.0.4時出現這個錯誤。你可以將插件降級到1.0.3,它可能會工作。我是不是真的使用Git的客戶端插件,所以刪除了我的情況

+1

Thnks man!現在我看到他們已經在JIRA中創建了一個bug https://issues.jenkins-ci.org/browse/JENKINS-17198 – 2013-03-13 20:25:48

+0

如果你沒有降級選項,你可以使用這個站點下載老版本的git插件:http://updates.jenkins-ci.org/download/plugins/git-client/ – KrauseFx 2013-03-18 16:08:13

+0

如何降級?特別是,如何在Windows Jenkins機器上做到這一點? – 2013-03-19 23:34:18

4

我只是碰到了同樣的問題,希望提供一種替代方案:在the plugin's page您可以閱讀

在1.0.4版本信息:

在GitAPI使用JGit實現對所有支持的方法,直到org.jenkinsci.plugins.gitclient.Git.useCLI設置

這似乎是我們的問題的原因。但它表示可以通過將org.jenkinsci.plugins.gitclient.Git.useCLI設置爲true來解決此問題。
因此,只需將-Dorg.jenkinsci.plugins.gitclient.Git.useCLI=true添加到您的啓動腳本。

在Debian(使用apt-get的版本時),它足以更新/etc/default/jenkinsJAVA_ARGS(如描述here

+0

JAVA_ARGS在Windows機器上設置在哪裏? – 2013-03-19 23:34:43

+0

@AlbertCheng您可以將其設置爲系統範圍(或針對當前用戶):http://www.nextofwindows.com/how-to-addedit-environment-variables-in-windows-7/ 或者如果您啓動jenkins使用'.bat'腳本,你可以在本地設置: http://ss64.com/nt/set.html 我沒有安裝Windows,所以我無法自己嘗試但如果你遇到麻煩只是發佈:) – mreithub 2013-03-20 10:47:20

+1

我想我想通了他們,只是修改主和奴隸的配置XML文件得到這個固定。不容易,不容易! – 2013-03-21 00:34:08

5

我有同樣的問題。他們發佈了一個更新來糾正錯誤,所以你只需要將Jenkins Git Client更新到1.0.5。現在它正在工作。