天天看点

Git Flow 使用指南

以下是基于Vincent Driessen提出的Git Flow 流程图:

Git Flow 的常用分支

master 分支是最近发布到生产环境的代码,即最近发布的 release,master 分支只能从其他分支合并,不能在这个分支直接修改,所有在 master 分支上的 commit 应该打上 tag,例如 release 合并到 master 应该创建一个 tag 。

这个分支是我们是我们的主开发分支,包含所有要发布到下一个 release 的代码,主要接收其他分支的合并,比如 feature 分支。

这个分支主要是用来开发一个新的功能,一旦开发完成,我们合并回 develop 分支进入下一个 release,原feature 分支进行删除。

当需要一个发布一个新 release 的时候,基于 develop 分支创建一个 release 分支,可以在这个 release 上测试,改 Bug;同时,其它开发人员可以继续基于 develop 分支新建 feature 。完成 release 后,将其合并到 master 和 develop 分支,一般发布完 release 分支后,该分支会删除,同时创建一个 tag 记住 release 版本号,之后删除 release。

当我们在 master 发现新的 Bug 时候,我们需要创建一个 hotfix, 完成 hotfix 后,我们合并回 master 和 develop 分支,同时在 master 上打一个tag, hotfix 的改动会自动进入下一个 release。

Git Flow 命令示例

上述使用命令行的方式操作起来比较麻烦,建议使用 sourcetree 中的 gitflow 进行操作。