步骤

jenkins已集成git插件(如无,请自行下载)

1. 去到源码管理栏,选中Git:

使用http协议去获取代码

Repository URL填写http的git地址,此时未选择相应的Credentials,会有图中红色提示

HTTP协议的话,需要输入账号密码来验证,点击Add,输入的账号密码并保存,记得kind选择“Username with password”

选后Credentials选中刚刚新增的账号密码,红色提示消失;

使用ssh协议去获取代码

Repository URL填写ssh的git地址,此时未选择相应的Credentials,会有图中红色提示

点击Add,需要添加ssh的credentials,这里需要上传的是私钥(不是公钥!!)

私钥文件存放在~/.ssh/id_rsa 文件中,

可参考http://blog.csdn.net/gw569453350game/article/details/51911179

2. 查看是否成功获取git代码

首先可以查看jenkins的控制台输出日志,是否报错

或者直接去到jenkins的工作目录

/var/lib/jenkins/workspace/

查看代码是否clone下来


疑问点(公钥和私钥的理解)

为什么linux上直接可以git clone成功,而用jenkins去执行不成功呢,然后jenkins为什么不用公钥而要密钥呢

个人理解:ssh生成的公钥和私钥是一对的,我们在linux上通过ssh协议获取git代码,也是先在linux生成公钥+私钥,然后把公钥上传到git服务端,然后获取代码的流程是:

a. linux把公钥上传到git服务器;

b. git服务器使用公钥加密信息(这里指代码),把信息传回给linux;

c. linux拿到信息后,通过本地的私钥解密信息,得到代码;

而公钥私钥存放在~/.ssh下,每个用户都不一样

而jenkins的执行是用jenkins用户去执行的,当git服务把信息给到jenkins的时候,jenkins在他的~/.ssh下没有对应的私钥,因此需要将私钥告诉jenkins,这就是jenkins为什么需要添加私钥;

jenkins 从git拉取代码的更多相关文章

  1. jenkins到底如何拉取代码 如何部署的

    tips:jenkins通过配置,将之前编译.打包.上传.部署到Tomcat中的过程交由jenkins,jenkins通过指定的代码地址url,将代码拉取到其jenkins的安装位置,进行编译.打包和 ...

  2. git 拉取代码指定分支

    问题背景: 新项目还在开发阶段,没有正式对外发布,所以开发同事合并代码到develop上(或者其他名称分支上),而不是到master分支上 通过git拉取代码的时候,默认拉取的是master分支,如下 ...

  3. 持续集成高级篇之Jenkins Pipeline git拉取

    系列目录 PipeLine中拉取远程git仓库 前面讲自由式任务的时候,我们可以看到通过自由式job里提供的图形界面配置git拉取非常方便的,实际上使用PipeLine也并不复杂.这一节我们展示一下如 ...

  4. windows server 服务器安装jenkins 并通过git拉取代码实现自动发布到IIS

    Jenkins是一个开源软件,可以通过一定的配置进行自动构建,测试,部署等功能. 首先,服务器应安装好 .NET Core环境和JDK, 下载Jenkins安装包 https://www.jenkin ...

  5. 如何使用git拉取代码及提交代码(详细)

    分享给刚进入公司的小伙伴们鸭! 第一步:首先在本地安装git和TorToiseGit小乌龟,svn同理,也可以安装下TorToiseGit中文语言包,前期可减少出错,后期熟悉了可直接用命令行pull代 ...

  6. SpringBoot项目从Git拉取代码并完成编译打包启动的sh自动脚本

    操作步骤: 1.进入/home/servers/codes/xxxx-dev/目录,从git上将项目clone下来: 2.确保/usr/local/xxx/xxxx-dev目录存在: 3.确保sh脚本 ...

  7. git拉取代码

    1,用sourcetree拉取的时候 遇到  fatal: repository 'http://gitlab.xxx.com/XXX/XXX.git/' not found 2,可以直接在要存放代码 ...

  8. jenkins使用git拉取gitlab代码

    1 在安装jenkins的主机上新加一个jenkins用户, 切换到jenkins用户登录, 生成公钥私钥ssh-keygen -t rsa -C "your email" -f ...

  9. Git拉取代码切换分支

    1.克隆代码 cd d:/GitTest //指定存放的目录 git clone https://git.oschina.net/name/test.git //你的仓库地址 2.查看远程所有分支 g ...

随机推荐

  1. OpenStack(企业私有云)万里长征第五步——虚拟机Migrate&Resize

    一.前言 上一篇文章讲了OpenStack的部署和简单操作,今天介绍一下如何实现虚拟机的Migrate以及Resize.Migrate操作和Resize操作基本上属于同一种操作,Migrate操作只是 ...

  2. MyBatis的关联关系补充 多对多 继承

    多对多 一个学生有多个课程 一个课程有多个学生 思路分析 :使用一个中间表 用学生表和课程表的主键作为中间表的联合主键 1数据库表的设计 课程表 学生表 中间表 2/实体类的设计 课程类 public ...

  3. 判断DataRow中是否包含某列

    DataRow dr = new DataRow(); if (dr!=null && dr.Table.Columns.Contains("errormesg") ...

  4. Android - 读取JSON文件数据

    Android读取JSON文件数据 JSON - JavaScript Object Notation 是一种存储和交换文本信息的语法. JSON对象在花括号中书写.用逗号来分隔值. JSON数组在方 ...

  5. Java 多态的实现原理

    一个对象变量可以指示多种实际类型的现象称为多态 允许不同类的对象对同一消息做出响应.方法的重载.类的覆盖正体现了多态. 1.多态的机制 1.1 本质上多态分两种 .编译时多态(又称静态多态) .运行时 ...

  6. 【NOIP模拟】matrix(简化矩阵)

    题目背景 SOURCE:NOIP2016-RZZ-1 题目描述 给出两个 N×N 的矩阵 A.B,矩阵每行每列标号 0-N-1 .定义这两个矩阵的乘积 AB 为

  7. Jenkins中的一些问题解决(~~不断更新~~)

    请使用ctrl+F,查询页面中你需要查找的错误信息(注意空格的输入) 1.错误"error fetching remote repo origin" 本地有多个sshkey,导致构 ...

  8. spring默认欢迎页设置

    简单配置的方式,直接展示静态网页,不经过Controller. web.xml 中什么没有配置任何有关欢迎页的信息!其实这时等效于如下配置:这个会由Web容器最先访问! //-未指定欢迎页时,缺省等于 ...

  9. Ionic 安装创建项目

    在安装了node+Cordova的情况下(过程参考我之前的文章Phonegap环境配置),安装ionic: 安装ionic npm install -g ionic Android创建安装: npm ...

  10. jsp 重定向技术

    页面重定向之后,request对象的属性全部失效,生成一个新的requeset对象