团队协作中的 Github flow 工作流程

团队协作中的 Github flow 工作流程

 

作为一名开发人员 Git 常用命令每天都在使用,大家肯定信手拈来,但是在团队协作中 Git 的使用姿势和个人开发还是有很多不一样的地方,对于技术团队,期望大家使用规范的 Git 操作流程,规范的 Commit Message,规范的代码风格。这样才能提高团队开发相率和项目的可维护性。今天主要为大家介绍一套基于 Github flow 的 Git 操作流程。

fork

首先,多人协作的情况,我们通常会 fork团队项目主仓库到自己的托管空间下,然后 Clone 到本地进行开发,假设团队项目的托管地址为:

https://github.com/fe/github-flow

 

此时主仓库项目下的固定分支两个,分别是 master,develop。

 

Clone 到本地:

git clone git@github.com:fe/github-flow.git

假设上面主仓库 fork 之后的项目地址为:

https://github.com/xxx/github-flow

Fork 出来的仓库完全属于你自己,你可以任意修改该仓库的代码及配置,但是除非你向项目主仓库提交 pull request,并且被接受通过,你才可以将你fork 仓库修改的代码合并到主仓库,否则不会对主仓库产生任何影响。

此时可以在控制台输入 git remote -v 命令查看当前远端仓库的地址,输出如下:

origin  git@github.com:xxx/github-flow.git (fetch)
origin  git@github.com:xxx/github-flow.git (push)

可以看出该地址的远端(origin)为刚刚 fork 到自己的托管空间下项目地址。

接下来我们可以设置一个名字为 upstream 的上游地址,也就是我们项目主仓库的地址
在命令行执行:

git remote add upstream git@github.com:fe/github-flow.git`

添加一个别名为upstream(上游)的地址,指向之前 fork 的原项目仓库地址。
再次执行 git remote -v 控制台输出如下:

origin  git@github.com:xxx/github-flow.git (fetch)
origin  git@github.com:xxx/github-flow.git (push)
upstream    git@github.com:fe/github-flow.git (fetch)
upstream    git@github.com:fe/github-flow.git (push)

设置上游地址的目的是当我们通过 pull request 的形式提到主仓库之后,本地仓库需要同步主仓库的代码,并及时更新到 origin(远端)仓库,保证自己托管空间下本地和远端仓库的代码都是最新的。

之后运行下面几条命令,就可以保持本地仓库与上游(upstream)仓库同步了

git fetch upstream
git checkout master
git merge upstream/master

接下来就是本地仓库推送到远端(origin)仓库:

git push origin master

这个时候我们可以在本地进行开发了,通常我们规定:

  • 开发新功能要从 develop 分支上新建一个 feat/[name-desc] 临时分支
  • bug 修复 从 master 分支新建一个 hotfix/[name-desc] 临时分支

对于Github flow 流程中,master 分支包含稳定的、发布到生产的代码,develop 分支包含迭代最新的code review 通过并自动化测试通过的代码。

这里需要注意:不允许任何开发人员把未经测试或者没有 Code review通过的代码直接提交到 master、d

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值