什么是SourceTree?
SourceTree是Windows和OS X下免费的Git和Hg 客户端。支持创建、克隆、提交、push、pull 和合并等操作。
什么是Gitflow工作流?
Gitflow工作流是Git 工作流的其中一种,它为大型项目提供了一些非常必要的结构,让团队在项目的功能开发、版本发布、热修复(hotfix)的迭代过程更加流畅。
对Gitflow工作流的理解
要想理解Gitflow工作流就必须对5个分支进行了解,以下是各个分支的介绍。
master:主分支,存储了正式发布的历史,只有正式发布时才会去合并master分支
develop:开发分支,项目功能的集成历史,项目开发过程中主要基于develop分支来操作
feature:功能开发分支,项目中对功能的开发一律使用该分支
release:版本发布分支,当要发布既定的版本时创建该分支,接下来的BUG修复都到此分支进行操作。
hotfix:热修复分支,对已经发布的版本存在BUG时创建该分支,完成后直接提交到master和develop分支
我们在开发过程中基于develop来创建feature分支,feature分支完成后再创建release分支,由release指定版本号然后合并到代码库(master和develop分支),如果发布的版本中出现BUG,创建hotfix分支进行修复即可。整个项目的迭代不断的重复这个过程即可。
有关Gitflow的详细介绍请看 Gitflow工作流,本文主要介绍在SourceTree中如何使用Gitflow工作流。
SourceTree中使用Gitflow工作流
首先创建一个master项目(怎么创建不是本文重点,可通过其它资料自行解决),在SourceTree中选中项目点击菜单栏中的Git 工作流对项目进行初始化,在弹出的对话框中使用默认配置点击“确定”即可,这时SourceTree会自动帮我们把develop分支创建好,如下图:
2.开发新功能时单击菜单栏中的Git工作流(请确定当前的分支为develop),在弹出的对话框中选择“建立新的功能”,然后填写功能名称点击“确定”按钮提交后即可看到创建的分支。(同理其它项目成员在开发自己负责的功能模块时建立相应的分支即可,互不影响)
3.1 :点击控制面板底部文件状态选项卡,勾选“未暂存文件”
3.2 :在提交信息处对进行说明:
3.3 :然后点击“确定”按钮进行代码的提交:
注意:如果功能模块还未开发完成,注意不要勾选“立即推送变更到master、develop”分支,以免影响其它项目成员的开发。
在提交过程中如果出现账户登录的问题,按照以下方法解决
假设我们目前已经完成了该功能的开发要提交到develop分支,点击菜单栏Git工作流选择“完成功能”即可。为了让项目分支简洁,合并时勾选删除feature分支。合并完成后我们可以在左侧菜单视图中看到创建的feature分支已经被删除,右侧提交历史记录中的分支标签显示为develop,而不再是feature/用户注册
如果一个阶段的功能开发完成了,我们就要建立release分支来发布版本,点击菜单栏中Git工作流,选择“建立新的发布版本”(建立发布版本时要注意拉取develop最新代码)。此时其它开发人员可以重复第二步操作继续开发其它功能模块,让项目有条理的进行迭代。
将发布的版本合并到master、develop分支并更新远程代码库。此时我们就可以将最新版本的代码发布到项目生产环境了。
如果项目测试不严格,我们通常会在发布的版本中发现一些BUG,这时可建立一个hotfix分支进行补丁修复。
补丁修复完成后提交代码并合并到master、develop分支。点击菜单栏Git工作流选择“完成修复补丁”,按照下面图示操作即可。合并完成后可以通过历史变更中的标签查看修复BUG的说明。
网友评论