Git之基线升级流程&解决提交冲突流程

基线升级

清理旧的版本,删掉直接重新下载,或者:

git status ./
git checkout ./*
git clean -df
git reset --hard HEAD

下载远程的新分支到一个本地的新分支

git fetch origin <remote_new_dev>:<local_new_dev>

修改rename的限制,否则可能合并不全

git config merge.renameLimit 99999

切换到本地主分支然后合并新分支

git checkout <local_master_dev>
git merge <local_new_dev>  >> ~/merge.log

搜索conflict和waring,标注的即是冲突文件

找到文件后根据关键符号来解冲突
>>>>>>
<<<<<<

本地验证后提交

git add -A
git commit //可能需要重新下钩子脚本
git push origin HEAD:refs/for/remote_old_dev

解提交冲突

如果还没提交,可以选择直接git pull后本地解冲突,本方法适用已经git push上去又不想abandon的情况。

保持提交

git checkout -b back_dev //新建备份分支
git checkout main_dev	//切换回主分支

更新父节点

git reset --hard HEAD^	//清除自己的修改
git pull		//更新到最新的提交
git log			//检查

cherry pick旧提交

git fetch ssh://name@10.4.0.169:port/Project refs/changes/xx/1 && git cherry-pick FETCH_HEAD
//gerrt上可以复制不可以复用

正式解冲突

git status		//1-查看冲突文件
//2-根据关键字">>>>>>>>"&"<<<<<<<<"取舍冲突
git add			//添加解决冲突后的文件
git commit 		//提交到cherry pick下来的提交,不产生额外的新提交,changeID还是一样

提交

git push
posted @ 2021-12-27 10:38  月的光景  阅读(318)  评论(0编辑  收藏  举报