场景1:项目一期的工做完成并投入市场造成master主分支封板,二期开发会新建一个本地sit分支进行开发。这时市场上的版本出现了bug,要切回一期的master主分支进行修改代码,发现sit分支中新增和修改的代码出如今了master分支中。git
场景2:小明拥有两个本地分支A和B,两个分支中都有LoginActivity.class文件,小明在A分支中修改了LoginActivity.class文件的内容,git checkout B后发如今分支A中修改的内容出如今分支B中。cdn
小明本来只有A分支,后来git checkout -b B生成了一个B分支;blog
小明的A和B分支都从远程分支master下拉了一次版本,如今本地两个分支的版本彻底同样;md5
我想如今你们已经知道关键问题在哪里了吧,就是两个分支的版本彻底同样,原来git checkout切换分支的时候,会对比当前分支的md5值,当两个分支的md5值同样的时候,git check就会带着你的修改的内容去另一个分支。开发
两种方式二选一it