|
@@ -53,22 +53,42 @@ tag名就是版本号,比如v1.0.xxxx。版本号可以根据一个简单的
|
|
|
就比分支上线方便一些。
|
|
|
```
|
|
|
|
|
|
-##### 6 修复线上bug (tag上线)
|
|
|
+##### 6 git merge 分支合并基本案例
|
|
|
|
|
|
```
|
|
|
-如果线上遇到bug需要修复而master分支已经提交了新开发的代码了该怎么办呢?非常简单,使用checkout命令,
|
|
|
-直接退回到最近一次上线的tag位置,然后以此为基准创建一个新的tmptest分支:
|
|
|
-git checkout tmptest v1.1.2021
|
|
|
-执行完以后就已经在新创建的tmptest分支了,而且代码已经回到了最近一次上线的状态。完成修复以后直接commit
|
|
|
-并打上新的tag, 比如v1.2.xxxx, 最后切回master分支,将tmptest合并到master即可:
|
|
|
+一、开发分支(dev)上的代码达到上线的标准后,要合并到 master 分支
|
|
|
+git checkout dev
|
|
|
+git pull
|
|
|
+git checkout master #将master分支合并到当前分支
|
|
|
+git merge dev
|
|
|
+git push -u origin master
|
|
|
+
|
|
|
+二、 当master代码改动了,需要更新开发分支(dev)上的代码
|
|
|
+
|
|
|
+git checkout master
|
|
|
+git pull
|
|
|
+git checkout dev
|
|
|
+git merge master #将master分支合并到当前分支
|
|
|
+git push -u origin dev
|
|
|
+```
|
|
|
+
|
|
|
+
|
|
|
+##### 7 修复线上bug (tag上线)
|
|
|
+
|
|
|
+```
|
|
|
+1、问题: 如果线上遇到bug需要修复而master分支已经提交了新开发的代码了该怎么办呢?非常简单,使用checkout命令,
|
|
|
+直接退回到最近一次上线的tag位置,然后以此为基准创建一个新的tmptest分支,当上面执行完以后就已经在新创建的tmptest分支了,
|
|
|
+而且代码已经回到了最近一次上线的状态。完成修复以后直接commit并打上新的tag, 比如v1.2.xxxx, 最后切回master分支,将tmptest
|
|
|
+合并到master即可:
|
|
|
+git checkout tmptest v1.1.2021 #拉去master 分支上的v1.12021版本到当前tmptest分支
|
|
|
git commit '修复xxx问题'
|
|
|
git tag v1.2.xxxx
|
|
|
git checkout master
|
|
|
-git merge v1.2.xxxx
|
|
|
+git merge v1.2.xxxx #合并指定分支或tag到当前分支
|
|
|
这样免除了一个代码库有众多分支难以管理的困扰。
|
|
|
```
|
|
|
|
|
|
|
|
|
-##### 7 常用操作汇总表,更多帮助请移步[Git](https://git-scm.com/book/zh/v2)
|
|
|
+##### 8 常用操作汇总表,更多帮助请移步[Git](https://git-scm.com/book/zh/v2)
|
|
|
|
|
|

|