当我在新的Jenkins项目中配置git仓库时,出现了以下错误:
Failed to connect to repository : Error performing command: ls-remote -h file:///c:\Dev\git\rx HEAD
我在Windows电脑上有一个本地的git仓库,从命令提示符中克隆相同路径也可以在同一台机器上运行。我不知道可能是什么问题(git.exe已经在系统路径中)。
当我在新的Jenkins项目中配置git仓库时,出现了以下错误:
Failed to connect to repository : Error performing command: ls-remote -h file:///c:\Dev\git\rx HEAD
我在Windows电脑上有一个本地的git仓库,从命令提示符中克隆相同路径也可以在同一台机器上运行。我不知道可能是什么问题(git.exe已经在系统路径中)。
Windows会将Jenkins安装为服务。但它以不同的用户权限运行Jenkins服务,这些权限无法访问GIT。您可以按照此链接找到Jenkins运行的用户http://antagonisticpleiotropy.blogspot.com/2012/08/running-jenkins-in-windows-with-regular.html。
例如,我的Windows本地用户名是“nathandrewsire”,不包括引号。打开Windows服务管理器(使用cmd和c:\ services.msc,或使用Windows键+R)。启用登录>此帐户:。然后输入.\username(例如.\nathandrewsire)。然后重新启动服务,您将可以从Jenkins构建中访问GIT。
我还发现了一个适用于Windows shell命令的代码片段,将输出要验证的用户。 echo %PATH% echo %USERDOMAIN%\%USERNAME%
http://antagonisticpleiotropy.blogspot.com/2012/08/running-jenkins-in-windows-with-regular.html
如果您正在使用Linux,此错误也可能是因为未在Git repo上启用共享。Linux jenkins用户将无法访问另一个用户下的Git报告,除非执行以下操作...
git --bare init --shared=group
此外,您的jenkins用户和Git repo用户必须属于同一组以进行文件权限访问。还有其他替代方法,如干扰umasks和ACL,但为您的两个用户设置linux组是最简单的方法。
确保不要使用裸init命令覆盖您的Git repo。如果您已经有了Git repo,则需要使用共享选项设置/移动到新的Git repo。我没有看到将现有repo转换为 shared 的方法,因为我猜测所有文件都需要更新?
注意*** 我使用VMWare Workstation共享文件夹在Windows Guest上进行构建。 Jenkins在输入Git repo时需要以下格式。
//vmware-host/Shared Folders/vm-share/ridcyDevelopment.git/