git将master分支的代码修改带到其他分支
git将master分支的代码修改带到其他分支今天在整理分支代码时,发现一个很神奇的问题,我在master分支上修改的代码没有提交,然后直接切换到dev分支,最后发现dev分支的代码和master分支修改后的代码一模一样,就感觉怎么这么神奇。看了好多博客,才明白了,git里边是分区的。git分区工作区:就是直接进行操作的区域暂存区:数据暂时存放的区域版本库:存放已经提交数据的区域上述情况出现的原因
·
git将master分支的代码修改带到其他分支
今天在整理分支代码时,发现一个很神奇的问题,我在master分支上修改的代码没有提交,然后直接切换到dev分支,最后发现dev分支的代码和master分支修改后的代码一模一样,就感觉怎么这么神奇。
看了好多博客,才明白了,git里边是分区的。
git分区
工作区:就是直接进行操作的区域
暂存区:数据暂时存放的区域
版本库:存放已经提交数据的区域
上述情况出现的原因
修改的代码没有add也没有commit,因此这部分代码(没有add—>工作区,没有commit—>暂存区)属于公共的,也就是对于所有分支来说,工作区和暂存区是公共的,每个分支都可以共享的。
解决方法
第一种
将修改的代码直接commit
如果未修改完,暂时不着急提交代码
第二种
可以选择git stash,按照我自己理解,就是相当于一个入栈操作,就是将当前分支所做的修改先保存到栈中,然后切换好需要的分支之后,执行一次出栈操作,然后之前分支修改的东西自然而然的就到当前分支了,不需要你手动复制,而且手动复制还容易遗漏。
第二种方式的操作如下:
这两种方式都可以很好的处理上述问题。
更多推荐
所有评论(0)