文章目录
- 前言
- 一、新建分支
- 二、切回老分支,保留新分支的更改
- 三、合并分支
前言
本文主要针对以下场景进行介绍:
- 场景一:创建新的分支
 当前分支(dev_1)已经开发完毕,下一期的需求需要在新分支(dev_2)上进行开发,如何创建一个新的分支?
- 场景二:切回老分支,保留新分支的更改
 当前分支(dev_1)已经开发完毕,目前正在新的分支(dev_2)上进行开发,此时分支(dev_1)出现了bug,需要回到分支(dev_1)上进行修改,如何保留分支(dev_2)上的修改,而切换到分支(dev_1)?
- 场景三:合并分支
 目前开发主分支是(dev_1),而你由于特殊原因需要在分支(dev_2)上进行开发,最后如何将分支(dev_2)上的更改合并到分支(dev_1)呢?
提示:以下是本篇文章正文内容,下面案例可供参考
一、新建分支
- 场景一:创建新的分支
 当前分支(dev_1)已经开发完毕,下一期的需求需要再新分支(dev_2)上进行开发,如何创建一个新的分支?
- 点击当前分支,选择【New Branch】
  
- 输入分支名,此时新的分支就已经创建完成了
  
二、切回老分支,保留新分支的更改
- 场景二:切回老分支,保留新分支的更改
 当前分支(dev_1)已经开发完毕,目前正在新的分支(dev_2)上进行开发,此时分支(dev_1)出现了bug,需要回到分支(dev_1)上进行修改,如何保留分支(dev_2)上的修改,而切换到分支(dev_1)?
-  当新创建好分支(dev_2)的时候,此时就已经在(dev_2)的分支上了 
  
-  已经对分支(dev_2)进行更改,但此时要回到分支(dev_1)进行修改bug 
  
-  由于分支(dev_2)进行了更改,无法切回分支(dev_1),此时可有两中方法 
- 方法一: 将分支(dev_2)的更改全部 ** 提交 ** 后,就可以切回分支分支(dev_1)
- 方法二: 将分支(dev_2)的更改全部 ** 暂存 ** 后,就可以切回分支分支(dev_1)
 以下演示方法二,将分支(dev_2)的更改全部暂存,
  
- 输入Message, 点击【Create Stash】,就可以将分支(dev_2)的更改全部暂存
  
- 暂存后 对分支(dev_2)的改动就不见了,此时就可以切换回分支(dev_1)
  
- 切换回分支(dev_1),对bug进行了修改
  
- 将分支(dev_1)的bug修改完成后,进行代码提交
  
- 分支(dev_1)提交完成后如下,可以切换到分支(dev_2)继续进行开发
  
- 如下,已经切换到分支(dev_2)
  
- 将分支(dev_2)暂存的改动给还原回来
  
- 根据之前填写的message, 找到暂存的代码,点击【Apply Stash】
  
- 此时可以看到,之前分支(dev_2)改动的代码已经复原
  
- 此时分支(dev_2) 已经完成了开发,需要提交代码
  
- 提交分支(dev_2) 的代码
  
- 此时不仅代码要提交到远程仓库,还要将分支(dev_2)推送到远程仓库
  
- 如下,代码和分支推送成功
  
三、合并分支
- 场景三:合并分支
 目前开发主分支是(dev_1),而你由于特殊原因需要在分支(dev_2)上进行开发,最后如何将分支(dev_2)上的更改合并到分支(dev_1)呢?
- 继续上面步骤,我们切换到分支(dev_1),可以看到分支(dev_2)上的修改没有同步到分支(dev_1)
  
- 合并分支,当前所在的分支是(dev_1),点击分支(dev_2),选择【Merge into Current】
  
- 此时发生了冲突,原因是分支(dev_1)修改bug改动的代码位置和分支(dev_2)开发的代码位置是同一处,所以产生了冲突
  
- 根据实际情况进行冲突解决
  
- 解决完冲突后,就能在分支(dev_1)上面看到分支(dev_2)修改的代码了
  
- 至此合并分支就完成了



















![[OpenGL] opengl切线空间](https://img-blog.csdnimg.cn/direct/d9f9b4cdabc44eb98c3f14a8a93b68e5.png)