git代码下载,分支合并
场景:我们在做一个项目的时候,如果有很多的项目,在不同的时间段,在不同的git分支上进行开发、测试、生产使用,那么时时候,我们会在相应的分支上做完一个阶段的事情,就需要合并。
如果只是通过工具进行合并,几次还行,如果是大批的情况下,我们就会感觉比较繁琐。所以有必要使用sh脚本进行,将需要执行的脚本,都写在一个.sh文件上,每次合并的时候,直接执行。
直接在linux上,可以直接执行,如果在win上,那么可以通过git bash工具执行。
1、本地创建一个目录 mkdir project 2、进入目录 cd project 3、克隆项目到本地弹出窗口,此处需要输入远程git仓库的账号密码。 git clone https://gitee.com/a393060727/xxx.git 4、已经下载到项目,进入项目 cd cc-system 5、查看所有分支 git branch -a 6、切换分支 git checkout develop 7、合并其他分支到本分支,这里将master合并到develop,如果合并有异常冲突,那么可以通过ide进行修改后,继续。 git merge master 8、将代码提交(推送)到远程仓库 git push 9、至此完成代码合并。
可以到到服务器上查文件合并情况。
最终创建sheel脚本
meger-dev-sit.sh
内容如下
#!/bin/bash project_name="chen-xxxx" git_url="http://47.112.161.199/cc-server/"${project_name}".git" branch_from="dev" branch_to="sit" if [ ! -d ${project_name} ];then echo "项目"${project_name}"不存在,克隆:"${git_url} git clone ${git_url} else echo "项目"${project_name}"已存在" fi cd ${project_name} git pull echo "显示所有分支:" git branch -a echo "切换分支:" git checkout ${branch_to} echo "合并分支:" git merge ${branch_from} echo "提交推送到"${branch_to} git push # echo "删除本地目录"${project_name} # cd .. # rm -rf ${project_name} echo "完成"
执行sh脚本
sh meger-dev-sit.sh