| 多人协作代码,若修改区域不是同一块很容易解决。 场景描述:初始master上代码版本号为A,他人在本地修改后提交到master,版本号变为B,但此时我本地版本号仍是A, 本地修改之后变为B‘,无法进行推送。解决方案:1,查看并创建分支: 2,当前本地位于 newdev 分支,进行常规提交操作复制代码git branch
git branch checkout -b newdev
3,切换回master分支进行合并复制代码git add .
git commit -m "About your chages"
4,此时会出现两种情况:复制代码git checkout master
git merge newdev
4.1 如果其他人修改的地方与你修改的地方不是同一片区域,则系统自动合并所有修改, 此时master分支上的版本号为C 你只需要在本地填写commit “Why this merge is needed? ” 4.2 如果你与其他人修改过同一片区域,则会在文件中产生冲突语句, 需要打开冲突文件,保留两人其中一个人的修改版本, 之后以git add .声明冲突已经解决,并commit本次修改 复制代码git status -s
git add .
git status -s
git commit
至此版本冲突解决,可以成功提交到远端master分支,且版本号为C。 |