#git 多人同步协作代码冲突解决方案
驻存stash
git add . 将修改的代码提交到本地仓库
git stash 将修改后的代码放到暂存区
git stash list 查看暂存区会显示:stash@{0}: WIP on prev: b275e49 Merge branch ‘prev’ of https://gitee.com/wx_43506079fb/git-test into prev
git pull 更新本地仓库,同步远程仓库
git stash pop 将暂存区代码放出来,此时要去代码中查看是否有代码冲突,有则修改,无则进行下一步
git add . 将修改的代码提交本地仓库
git commit -m “XXX” 提交更新信息
git push 提交代码到仓库
合并代码到主分支,无法合并,因为master基库改变了,可能添加 了新的功能
需求:要把prev 分支合并到master分支中
此时提交代码需要变基
变基
场景:prev 分支中的代码是从master 中来的,当你把prev的功能做完后,需要把prev和master主分支合并,但是这个时候有其他人已经合并了主分支,prev中来源master 和现在的master 就不一样了,所以无法合并master和prev分支,需要变基
1.首先切换到msater 分支中 git checkout master
2.本地仓库同步远程master git pull
3.切换到 prev git checkout prev
4.提交代码到本地仓库 get add .
5.变基将本地仓库变为远程master仓库 git rebase master
6.查看代码,修改代码冲突
7.提交代码到本地仓库 git add .
8.git rerbase --continue 继续变基
9.查看代码,修改代码冲突 (往后重复7,8,9知道完成)
这个时候修改完了代码冲突
git add . 提交修改到本地仓库
git commit -m “XXX” 提交修改信息
git push origin prev -f 强推 到prev分支中
这个时候prev 的来源就是修改之后的master主分支
git上就可以申请提交合并代码了