SourceTree系列5:贮藏和修复Bug

1、贮藏

在切换分支时,要确保该分支已经提交。如果当前develop分支可以提交,无疑是最好的选择,但是,如果当前不能提交呢?

此时我们可以使用贮藏功能。贮藏功能就是对现在的更改进行备份,注意仅仅是对更改进行备份。使用贮藏功能后,会让当前分支的工作区恢复到上一次提交的时候,从而使当前工作区变得干净。这叫做贮藏现场。

现在我们来使用一下这个功能,首先切换到develop分支,然后修改文件内容,并添加一个新文件。
在这里插入图片描述
在这里插入图片描述
贮藏成功之后发现新建的文件还在,说明新文件没有被贮藏,贮藏成功的只是被修改的文件。

出现这种情况的原因是因为,此时new file.txt还没有被Git跟踪管理,所以它默认不会被贮藏,从而一直留在文件系统中。如果我们切换到master分支,这个更改(添加新文件也是更改)会被带到master中,sourceTree也会提醒有未提交的更改,提醒你提交这个文件。

为了避免这个文件在master中会被误提交,从而使该文件出现在不应该出现的版本中,我们应该先将文件暂存再贮藏
在这里插入图片描述
在这里插入图片描述
此时应用贮藏区,new file.txt会被应用到暂存文件,test.txt会被应用到未暂存

在这里插入图片描述
在这里插入图片描述
保留暂存的更改,顾名思义,就是贮藏的之后保留已暂存的文件。

贮藏时,如果勾选了“保留暂存的更改”选项,那么已经加入暂存区的内容都会被保留,并且在切换分支时,暂存区的内容也会被带到其他分支去。从而其他分支也能看到所做的更改。

注意,一般情况下,请不要勾选“保留暂存的更改”。因为,这可能会给你带来冲突,除非特殊情况,你确实需要把修改带过去才这么做。
在这里插入图片描述
在这里插入图片描述

2、修复bug

当master分支出现bug,develop分支又有已提交更改的情况下。
修复bug分为以下几步:
第一步:贮藏develop分支的修改
第二步:切换到master,并从master新建用于修复bug的分支(fixbug分支)
第三步:在fixbug分支上修复bug
第四步:切换到master,合并master和fixbug分支
第五步:切换到develop,合并develop和fixbug分支
第六步:应用贮藏,继续开发

第一步:贮藏develop分支的修改,上面已经描述过如何贮藏,这里不再过多解释。
在这里插入图片描述
第二步:切换到master,并从master新建用于修复bug的分支(fixbug分支)
在这里插入图片描述
第三步:在fixbug分支上修复bug
在这里插入图片描述
第四步:切换到master,合并master和fixbug分支
在这里插入图片描述

第五步:切换到develop,合并develop和fixbug分支
在这里插入图片描述

第六步:应用贮藏,继续开发
这个时候应用贮藏区会报如下冲突,我们需要解决冲突
在这里插入图片描述
这是报了冲突之后文件内容的变化情况
在这里插入图片描述
解决冲突,我们既需要保留合并过来的内容,也需要保留贮藏的内容。将文件中的 ’<<<<<<< Updated upstream‘,’=======‘,’>>>>>>> Stashed changes‘都删除即可。然后告诉sourceTree冲突已解决。
在这里插入图片描述
在这里插入图片描述

  • 5
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值