分支管理章节完善
This commit is contained in:
parent
90eaabae86
commit
e53c1d1a13
|
@ -18,9 +18,8 @@
|
|||
正式环境中存储库不只一个人维护,常常出现本地软件版本才V1.0,服务器仓库都更新到V1.3的情况。这时候直接推送,会报错
|
||||

|
||||
需要先拉取服务器的更改,合并代码,有合并冲突的先解决冲突,然后再提交、推送。
|
||||
可以在本地存储库右键菜单选择“TortoiseGit”,然后选择“拉取”,点击确认。
|
||||
## 克隆
|
||||
指将远端服务器的存储库下载到本地
|
||||
指将远端服务器的存储库下载到本地。如果想把别人的存储库下载到本地就用到克隆了。
|
||||
拿本存储库举例,在本地新建一个文件夹,进入文件夹,右键菜单选择“Git 克隆”,弹出克隆窗口。
|
||||

|
||||

|
||||
|
|
Binary file not shown.
After Width: | Height: | Size: 16 KiB |
Binary file not shown.
After Width: | Height: | Size: 15 KiB |
Binary file not shown.
After Width: | Height: | Size: 96 KiB |
Binary file not shown.
After Width: | Height: | Size: 22 KiB |
Binary file not shown.
After Width: | Height: | Size: 13 KiB |
61
Lab3/lab3.md
61
Lab3/lab3.md
|
@ -1,8 +1,59 @@
|
|||
# 分支管理
|
||||
|
||||
前面提交、推送操作都是在“master”分支进行的。针对一个不断迭代的复杂项目,如果全部都在“master”上操作,版本的结构会乱,其他人看不懂哪个提交是稳定的,是生产下发版本,哪个提交是尚在开发版本。
|
||||
针对这一问题,下面介绍Git flow分支模型,大家不一定要严格套这个模型。
|
||||
模型的分支如下:
|
||||
- master
|
||||
- develop
|
||||
- release
|
||||
- hotfix
|
||||
|
||||
多定制版本维护
|
||||
- feature/xxx
|
||||
- hotfix/xxx
|
||||
- release/xxx
|
||||
|
||||
它们的流程图如下:
|
||||

|
||||
## master
|
||||
- master主分支,代码库应该有一个、且仅有一个主分支,主分支存放最稳定的程序版本
|
||||
- 所有用于正式生产下发的版本都应该在master分支上发布
|
||||
- 不能直接在master分支上修改提交,只能从其它分支合并
|
||||
- 所有在master上的提交应该标记tag
|
||||
## develop
|
||||
- develop分支是主开发分支
|
||||
- 用于合并来自feature分支的程序
|
||||
- 从该分支创建release分支
|
||||
- 接收来自release和hotfix分支的优化
|
||||
## feature
|
||||
- 用于新功能的开发
|
||||
- 从develop分支签出
|
||||
- 开发完后合并到develop
|
||||
## hotfix
|
||||
- 用于紧急修复现场出现的bug
|
||||
- 从master签出
|
||||
- 完成修复后要双向合并到master和develop
|
||||
## release
|
||||
- 用于准备版本发布
|
||||
- 从develop分支签出
|
||||
- 等测试组测试通过,双向合并到master和develop
|
||||
## 其他说明
|
||||
远程仓库应该只存在两个分支,一个是master分支,存放线上(生产环境)版本,这个分支的代码总是可靠可用的;另一个是develop分支,这个分支用于日常开发。
|
||||
hotfix分支、feature分支和release分支都在本地,原则上不能推送到远程仓库。这三种分支都属于临时性需要,使用完以后,应该删除。
|
||||
develop分支下允许有多个feature分支,且尽量避免冲突;允许在有feature处在开发中的情况下从develop分支拉取到release分支。
|
||||
|
||||
# 分支操作
|
||||
## 创建分支
|
||||
在工程目录下右键菜单选择“TortoiseGit”,点击“创建分支”。
|
||||

|
||||
输入分支名称。“切换到新分支”可选,后面可以手动切换。点击“确认”新分支便创建成功。
|
||||
## 切换分支
|
||||
想要在某个分支上做修改提交,首先要切换到该分支。
|
||||
在工程目录下右键菜单选择“TortoiseGit”,点击“切换/检出”。
|
||||

|
||||
选择分支,点击确认。
|
||||
## 创建标签
|
||||
master分支提交后要加一个标签,用来表示版本号。
|
||||
在工程目录下右键菜单选择“TortoiseGit”,点击“创建标签”。
|
||||
输入标签名称,选择分支即可。
|
||||

|
||||
## 分支推送
|
||||
当某个分支提交的差不多了,就可以推送了。
|
||||
之前推送的是master分支,现在可以选择本地的其他分支。
|
||||

|
||||
值得注意的是“包括标签”选项,按照模型,master分支需要标记Tag版本号,master分支推送时勾选该选项可以将Tag同步到服务器。
|
Loading…
Reference in New Issue