繁体   English   中英

Git Merge无需在Jenkins上结帐

[英]Git Merge without checkout on Jenkins

我们有一个相当复杂的代码库,遍及多个分支(是的,我知道拥有多个开发分支是不好的实践,但是我们别无选择,该项目已经使用了10年以上,而返工是一场噩梦) Jenkins脚本正在同步不同的分支,该脚本通过trick流原理同步所有更改。

问题在于,由于分支中的巨大代码更改,脚本的运行速度确实很慢。 有没有一种方法可以进行结帐而不必实际检查存储库? 我们只需要合并分支即可。

代码如下:

if [ ! -d repoFolder ]; then
    git clone git@bitbucket.org:xxxx/repoFolder.git
fi
cd repoFolder;
git reset --hard;
git clean -fxd;
git checkout master;
git pull;
git checkout develop; 
git pull;
git checkout devHot; 
git pull;
git merge master;
git merge develop; 
git push;
git checkout test;
git pull;
git merge devHot;
git push; 
git checkout release/2017_design;
git pull; 
git merge test;
git push;
git checkout feature/2017-hot;
git pull;
git merge release/2017_design; 
git push;

有什么建议可以加快流程吗?

您是否尝试过clone/fetch/pull命令的--depth n (doc)选项?

它应该只能从分支下载最后n次提交中的文件(请查看--branch (doc)--no-single-branch选项),从而跳过存储库的其余部分

称为浅拷贝

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM