使用Jenkins合並gitlab服務器上的代碼


1、申請gitlab讀寫權限賬號

2、在Jenkins的主機上,運行Jenkins程序的用戶的home目錄下,執行:

touch .git-credentials
vim .git-credentials
http://{用戶名}:{密碼}@{IP地址}

git config --global credential.helper store

查看.gitconfig文件,有

 

[credential] helper = store

這樣,操作git就不需要再輸入賬號密碼

3、

a、合並分支到主干

cat git_merge_branch_to_master.sh 
#!/bin/bash
RepositoryURL=$1
Branch=$2
ProjectName_tmp=${RepositoryURL##*/}
ProjectName=${ProjectName_tmp%\.*}
echo $ProjectName
echo $Branch

nowPath=`pwd`
rm -fr $nowPath/*
ls
git clone $RepositoryURL
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

 

b、合並主干到分支

cat git_merge_master_to_branch.sh
#!/bin/bash
RepositoryURL=$1
Branch=$2
ProjectName_tmp=${RepositoryURL##*/}
ProjectName=${ProjectName_tmp%\.*}
echo $ProjectName
echo $Branch

nowPath=`pwd`
echo $nowPath
rm -fr $nowPath/*
ls
git clone -b $Branch $RepositoryURL
cd $ProjectName
sleep 1
git checkout -b master origin/master
sleep 1
git checkout $Branch
sleep 1
git merge master
sleep 1
pwd
#git add .
#git commit -m "merge master to branch"
#git push $RepositoryURL $ProjectName
ls
git push origin $Branch
mv ./* .. && cd .. && rm -fr $ProjectName

 

4、腳本使用,在Jenkins新建自由風格項目,在“構建”中,“增加構建步驟”,“execute shell ” 填寫執行腳本的命令,例如:

source ~/.bashrc && bash /apps/sh/git_merge_branch_to_master.sh http://10.0.0.200/dxmall/pms-service.git 20170705_shop_pms_1.5.1

腳本執行有兩個參數,第一個參數為項目的gitlab地址,第二個為分支的名字。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM