http://blog.csdn.net/gw569453350game/article/details/51911179


在 jenkins 中使用 Git 插件从仓库中 pull 代码的时候会要求 jenkins 必须有 pull 权限(尤其是当git开启了ssh认证的时候),在配置 jenkins job 的时候有以下这些方法配置 ssh key:

方法1 : 
登陆 jenkins 服务器,切换到 jenkins 用户,生成 ssh key,然后把 公钥添加到 git 服务器上.

sudo su - jenkins
# 切换到 jenkins HOME 目录
mkdir .ssh  // 如果目录已存在则跳过
ssh-keygen -t rsa  // 生成 ssh key, 复制 xxx.pub 公钥到 git 服务器上即可.
  • 1
  • 2
  • 3
  • 4
  • 1
  • 2
  • 3
  • 4

关于 ssh-keygen see link: http://blog.csdn.net/gw569453350game/article/details/46706973

方法2 : 
在 jenkins 上设置 Credentials,然后再新建job的时候使用设置的 Credentials 即可

在jenkins界面,依次点击: Credentials -> System -> Add domain: 
Domain Name: 填写你git服务器的地址,如 github.xxx.com 
Description: 随便写一点描述,如 This is the Credential for github

如图所示:

点击 ok 后,在点击 “adding some credentials?”

进入页面后,可以选择 Username with password 或者 SSH Username with private key, 根据你的情况选择,这里我们选择 Username with private key:

Username: 随便起一个名字,以便在创建 Job 的时候使用该 Credential 
Private Key:可以指定文件,也可以使用默认的 ~/.ssh,当然也可以直接将私钥复制粘贴到此处。 
Passphrase: 如果你在创建 ssh key 的时候输入了 Passphrase 那就填写相应的Passphrase,为空就不填写 
ID: 空 
Description: 空

如图:

点击 ok 后 Credential 就创建好了。

如果你再新建 Job 就可以看到我们的 Credential 选项了:

<dl class="digg digg&#95;enable" id="btnDigg" style="display&#58;inline&#45;block&#59;width&#58;72px&#59;overflow&#58;hidden&#59;background&#58;rgb&#40;255&#44;121&#44;0&#41;&#59;font&#45;family&#58;Arial&#44; Console&#44; Verdana&#44; &#39;Courier New&#39;&#59;"> <dt style="color&#58;rgb&#40;255&#44;255&#44;255&#41;&#59;font&#45;size&#58;27px&#59;line&#45;height&#58;30px&#59;font&#45;family&#58;&#39;Microsoft YaHei&#39;&#59;"> 顶 </dt> <dd style="color&#58;rgb&#40;255&#44;255&#44;255&#41;&#59;line&#45;height&#58;22px&#59;font&#45;family&#58;Arial&#59;"> 3 </dd> </dl>