git分支管理在日常工作中是非常常用的,我们可能需要在不同的分支上开发不同的代码,但是如果写错分支了,直接切分支又有冲突,怎么把当前已写的内容迁移到其他分支呢,以下是我常用的方法:
一、未commit提交的代码
1、我当前在dev分支做了一些更改,但是这个更改是要放在master分支的
2、这个时候我直接切分支,会有以下报错,因为有冲突
3、先贮藏改动的内容
4、贮藏后,该改动就被保持到一个临时贮藏版本,然后改动就不在当前分支了,可以正常切分支。切换分支后,应用贮藏,将贮藏的内容,迁移到新分支
5、应用贮藏后,就可以看到该改动记录就到了新分支,可以正常提交了
二、已提交的代码,遴选到指定分支
举例:需要把提交到dev分支的某一次提交的代码提取到master分支(不能直接合并,因为合并会把dev的所有内容都同步到master)
1、切换到master分支,在提交历史记录列表中找到需要遴选的提交
2、右击遴选
3、直接点击继续
4、如果没有冲突的话,在dev提交的代码就会被同步到当前分支。如果有冲突,解决冲突,保留dev分支的改动即可