我的Dropbox文件夹中有一个主要的Git裸存储库,我使用无头Debian服务器运行Jenkins来构建我的项目。
到目前为止,我一直在使用这种方法来构建我的项目:我在无头服务器上创建了一个裸git存储库,并配置了Jenkins作业,使用以下URL从此存储库中提取源:{{1} }。因此,当我希望Jenkins构建我的更改时,我必须将它们推送到此存储库。这很好用,但它不是很方便,因为我必须手动推送到两个存储库(Dropbox和Debian),而且当我想添加一个新项目时,我需要在Debian服务器上创建一个新的存储库。
所以我决定将Jenkins作业配置为直接从Dropbox存储库中提取。我在/var/cache/git/project
的Debian服务器上设置了Dropbox。
但是当我尝试配置Jenkins作业以提取drom URL /home/jardo/Dropbox
时,我收到以下错误:
无法连接到存储库:命令" git ls-remote -h /home/jardo/Dropbox/git/project.git HEAD"返回状态码128: 标准输出: stderr:致命:' /home/jardo/Dropbox/git/project.git'似乎不是一个git存储库 致命:远程端意外挂断
为什么Jenkins能够从/home/jardo/Dropbox/git/project.git
克隆,但不能从我的Dropbox文件夹中克隆? Dropbox完全同步,存储库内容看起来不错。我已经递归地将整个存储库的权限设置为777并且没有帮助。
以下是我的Dropbox存储库中ls -l的输出:
/var/cache/git/project
答案 0 :(得分:0)
事实证明,用户Jenkins无法访问由用户Jardo拥有的GIT存储库,即使我尝试将其权限递归设置为777.解决方案是为用户Jenkins设置Dropbox。