本地Jenkins无法验证远程Gitlab私有存储库

时间:2013-09-05 12:19:08

标签: git jenkins gitlab

我在Windows上安装了Jenkins,我需要所有插件,我想是的。当我创建一个新工作和在存储库URL中我写我的网址

http://git.*****.org/*****/seleniumproject.git

并显示

Help for feature: Repository URL
Failed to connect to repository : Command "C:\Program Files (x86)\Git\bin\git.exe ls-remote -h http://git.*****.org/*****/seleniumproject.git HEAD" returned status code 128:
stdout:
stderr: fatal: Authentication failed for 'http://git.*****.org/*****/seleniumproject.git'`

我的问题:如何对我的远程gitlab进行身份验证?!我有所有键的.ssh文件夹,但不知道该怎么做......

更新:奇怪,因为我的TortoiseGit工作正常

我的修复:

  1. 转到jenkins路径并在根示例中保存.ssh文件夹 您可以在C:\Jenkins\.ssh
  2. 中找到C:\Users\yourname\.ssh .ssh文件夹
  3. 转到Jenkins>管理Jenkins>管理凭据,您可以在这里 添加您的私钥或从jenkins master中选择!/。ssh
  4. 转到Jenkins>管理Jenkins>在git可执行文件中配置系统写了这个C:\Program Files (x86)\Git\cmd\git.exe路径必须与 cmd
  5. 创建新作业并在存储库网址添加 ssh://git@git.sitename.org:/name/projet.git

3 个答案:

答案 0 :(得分:3)

我的修复:

  1. 转到jenkins路径并在根示例中保存.ssh文件夹 你可以在C:\ Users \ yourname.ssh找到C:\ Jenkins.ssh .ssh文件夹
  2. 转到Jenkins>管理Jenkins>管理凭据,您可以在这里 添加您的私钥或从jenkins master中选择!/。ssh
  3. 转到Jenkins>管理Jenkins>在git可执行文件中配置系统 写了这个C:\ Program Files(x86)\ Git \ cmd \ git.exe路径必须是 CMD
  4. 创建新作业并在存储库网址添加 SSH://git@git.sitename.org:/name/projet.git

答案 1 :(得分:1)

  

我的文件夹包含带有所有键的.ssh

如果您继续使用http(s)网址,那么这些密钥将永远不会被读取。

您应该使用ssh网址,并首先确保其正常运行:

ssh -Tv ssh://git@git.*****.org

(假设您在服务器端需要的用户帐户为“git”)


请注意,section on SSH of this guide在这里很有用:

您已安装TortoiseGIT

http://guides.beanstalkapp.com/version-control/git-on-windows/git-ssh-variable.png

  

如果您在电脑上安装了TortoiseGit,那么您可能会遇到问题。
   TortiseGit会创建一个环境变量,将Plink配置为您的SSH密钥库,当您尝试使用Git和SSH时可能会发生冲突
  无论你如何更改配置或卸载TortoiseGit,该环境变量都会持续存在,直到你删除它为止,Git不会查看你的常规.ssh目录来找到正确的密钥。

     

在我们的案例中,环境变量如下所示:

GIT_SSH=c:\Program Files\Putty\plink.exe. 
  

可在此处找到环境变量:

  • Windows XP:Control Panel → System Properties → Advanced → Environment variables
  • Windows 7:Control Panel → System → Advanced system settings → Environment variables

答案 2 :(得分:1)

尝试使用C:\Program Files (x86)\Git\cmd\gitk.cmd代替\bin\git.exe。如果没有解决,那么Here是如何配置ssh的信息。有时您可能会收到公钥错误,该问题已解决here。如果您想生成新的ssh密钥,this文章可以为您提供帮助。