我们在实际写项目的时候会遇到这种情况,新的需求写到了一半,测试发现线上版本有bug要立刻修复。新需求写到一半了,有些旧的页面已经删除掉了,有的页面已经发生了大的变化,这个时候去修复bug再去发布,会把新的未完成的改动发布出去。
如果我们每次实现新的需求都是从主分支上分一个新的分支出去,新的需求在需求分支上写,遇到要立刻修复bug情况切回到主分支,修复bug完了再切回来,这种问题就很好解决。
以下是具体步骤:
创建新项目并勾选Git版本控制
创建完成后,代码默认在Main分支上
假设这个时候来了新的需求,就比如在VStack里面在增加一个按钮,我们不要直接在Main分支上写,而是去创建新的名字叫做增加按钮的分支
点击完成后,我们可以看到我们当前的分支已经变成了增加按钮
我们按照需求在页面上添加了一个按钮
但按钮的具体功能还没来得及添加,但这个时候测试说图标下面的文字错了,要改成中文的你好世界。这个时候,就是提现分支的重要性了
我们首先提交我们的改动
然后切换到主分支上去
此时,我们回到了主分支,代码也变成了刚切分支的样子
这时,我们在主分支上修复bug,把Hello World改成你好,世界
测试没有问题,打包发布到线上,然后主分支提交
我们再次回到增加按钮的分支来完成我们还未完成的工作
代码是我们在增加按钮分支上最后保存的状态,但文字还是Hello World,因为我们是在主分支改动的,不会影响到这里。
接下来,我们完成按钮的点击功能
测试没有问题后,提交增加按钮分支上的改动
这是主分支上的提交记录
这是增加按钮分支上的提交记录
我们现在切回主分支
然后右键增加按钮分支,选择合并到主分支
这个时候有一个冲突需要我们处理
处理好分支后,在主分支上会多一条合并分支的记录
然后我们的代码变成了修复bug和增加新需求后的状态