1.申请gitlab读写权限账号
2.在Jenkins的主机上,运行Jenkins程序的用户的home目录下,执行:
[root@cicd merge]#cd /home/
[root@cicd home]#vim .git-credentials
http://{用户名}:{密码}@{IP地址}
[root@cicd home]#git config --global credential.helper store
查看.gitconfig文件,有
[credential] helper = store
这样,操作git就不需要再输入账号密码。
3.分支合并到主分支master
#!/bin/bash
RepositoryURL=$1
Branch=$2
#CommitContent=$3
ProjectName_tmp=${RepositoryURL##*/} #拿掉最后一个 / 及其左边的字串: gw-packing.git
ProjectName=${ProjectName_tmp%\.*} #删掉最后一个 . 及其右边的字符串 : gw-packing
echo $ProjectName
echo $Branch
nowPath=`pwd`
rm -fr $nowPath/*
git clone $RepositoryURL
sleep 3 #等待代码下载完成,否则会报错
cd $ProjectName
sleep 1
git checkout -b $Branch origin/$Branch
sleep 1
git checkout master
sleep 1
git merge $Branch
sleep 1
git push origin master
4.脚本使用
在Jenkins新建自由风格项目,在“构建”中,“增加构建步骤”,“execute shell ” 填写执行脚本的命令,例如:
sh /home/merge/git_merge_branch_to_master.sh git@ip:gw/gw-packing.git dev
脚本执行有两个参数,第一个参数为项目的gitlab地址,第二个为分支的名字。