git将master分支的代码修改带到其他分支

git将master分支的代码修改带到其他分支

今天在整理分支代码时,发现一个很神奇的问题,我在master分支上修改的代码没有提交,然后直接切换到dev分支,最后发现dev分支的代码和master分支修改后的代码一模一样,就感觉怎么这么神奇。
看了好多博客,才明白了,git里边是分区的。

git分区

工作区:就是直接进行操作的区域
暂存区:数据暂时存放的区域
版本库:存放已经提交数据的区域
在这里插入图片描述

上述情况出现的原因

修改的代码没有add也没有commit,因此这部分代码(没有add—>工作区,没有commit—>暂存区)属于公共的,也就是对于所有分支来说,工作区和暂存区是公共的,每个分支都可以共享的。

解决方法

第一种

将修改的代码直接commit

如果未修改完,暂时不着急提交代码

第二种

可以选择git stash,按照我自己理解,就是相当于一个入栈操作,就是将当前分支所做的修改先保存到栈中,然后切换好需要的分支之后,执行一次出栈操作,然后之前分支修改的东西自然而然的就到当前分支了,不需要你手动复制,而且手动复制还容易遗漏。

第二种方式的操作如下:

在这里插入图片描述
这两种方式都可以很好的处理上述问题。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值