weiqi7777

jenkins pipeline中对git的操作

0
阅读(9476)

jenkins拉取代码,通常是在job的git设置中,设置拉取代码的位置,拉取的分支,以及代码保存的位置。如果要之后,要修改设置,就要重新进入到job的git设置中,进行设置。

其实在jenkins的pipeline中,可以对git进行操作,git有提供pipeline的操作方式。

在这里,会用到3个pipeline的step。

  • dir:用来切换目录,git拉取的代码,存放在这个目录中。

  • git:用来拉取代码

  • sh: 用来执行shell命令

代码如下:

stage {	
    steps {		
       dir(path: "./project") {			
          git(	
             branch: "master"
             redentialsID: "xxxx",				
             url : "http://xxx.git",
             changelog: true			
           )	 
           sh """git status
                 git checkout v1.0
                 git branch			
              """		
        }	
    }
}

一、dir

dir切换目录,带有一个参数path,指定切换的目录,如果参数是相对路劲,那么是相对路劲的起始目录为该job的workspace目录。

在dir包围的代码块,都会在dir参数设定的目录下执行,运行。因此,之后的git所拉取的代码,是在dir的path指定的目录下。

二、git

git命令,带有4个参数

  • branch:执行拉取的分支

  • credentialsID:访问该仓库的认证

  • url: 拉取仓库的git地址

  • changelog:是否打印信息

三、sh

sh指定执行的命令,如果需要分支切换,tag切换等等,均可以在此执行。

将上述代码,加入到pipeline的脚本中,即可实现pipeline管理git代码,当以后需要对git版本库做其他操作时,只需要修改JenkinsFile,即可。

更多内容,请访问我的个人网站:

http://www.lujun.org.cn/