前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >七、玩转Git三剑客-使用GitHub进行团队协作

七、玩转Git三剑客-使用GitHub进行团队协作

作者头像
Dreamy.TZK
发布2020-08-24 17:16:35
6200
发布2020-08-24 17:16:35
举报
文章被收录于专栏:小康的自留地小康的自留地

创建团队的项目

通过新建组织这个页面即可新建一个组织。

怎么选择适合自己团队的工作流

主干开发

  1. 开发团队系统开发团队系统设计和开发能力强。有一套有效的特性切换的实施机制,保证上线后无需修改代码就能够修改系统行为。需要快速迭代,想获得CI/CD所有好处。设计和开发能力强。有一套有效的特性切换的实施机制,保证上线后无需修改代码就能够修改系统行为。需要快速迭代,想获得CI/CD所有好处。
  2. 组件开发的团队,成员能力强,人员少,沟通顺畅。用户升级组件成本低的环境。

Git Flow

不具备主干开发能力。有预定的发布周期。需要执行严格的发布流程。

Github Flow

不具备主千开发能力。随时集成随时发布:分支集成时经过代码评审和自动化测试,就可以立即发布的应用。

GitLab Flow(带生产分支)

不具备主干开发能力。无法控制准确的发布时间,但又要求不停地集成。

GitLab Flow(带环境分支)

不具备主干开发能力。需要逐个通过各个测试环境的验证才能发布。

GitLab Flow(带发布分支)

不具备主干开发能力。需要对外发布和维护不同版本。

如何挑选合适的分支集成策略

在项目设置处可以选择允许通过那种方式合并。

例如如下项目,通过三种方式进行合并的结果。

  1. Create a merge commit

只要git能够解决即创建一个merge。

  1. Squash and merge

把三个蓝色的commit合并成一个,然后合并到黑色分支。

  1. Rebase and merge

相当于把蓝色的三个commit移动到黑色后边。

启用issue跟踪需求和任务

可以通过设置进行开启,默认是开启的。

也可以建立模板。

如何用project管理issue

  1. 创建project

  1. 将issue关联project

项目内部实施code review

为了保证集成分支代码质量,不允许不经过code review就集成到master分支。

  1. 添加规则

  1. 创建规则

团队协作时如何做多分支的集成

Create a merge commit

  1. 黑色分支首先与蓝色分支进行合并

  1. 接下来黑色分支与绿色分支进行合并 如果出现冲突,则需要人工解决。

解决完冲突进行合并。

Squash and merge

  1. 黑色分支首先与蓝色分支进行合并

会将蓝色分支的三次commit进行合并,然后加入到黑色分支。

  1. 接下来黑色分支与绿色分支进行合并 同样的需要处理冲突。

接下来进行合并。

Rebase and merge

  1. 黑色分支首先与蓝色分支进行合并

也就是将蓝色分支的三个commit直接移动到黑色主分支的后边。

  1. 接下来黑色分支与绿色分支进行合并 同样的需要处理冲突。

此时变不能进行合并了。

  1. 如果一定要用此方式则需要处理
    • 将绿色分支回退到到s处(远端本地都回退)
    • 将绿色分支基于黑色分支进行变基 git rebase origin/master接下来处理冲突(如果存在),重新添加文件并执行命令 git rebase --continue循环执行这一步,直到处理完所有冲突。
    • 接下来强制将绿色分支推送。

快速处理繁琐的过程。参考:Rerere

  1. Rerere全局配置打开 git config --global rerere.enabled true
  2. 切换到绿色分支与master进行合并 git merge master如果出现冲突,则处理冲突。如果出现Recorded preimage字眼则表示成功。
  3. 添加文件并生成commit git add . git commit -am"temp"
  4. 回退版本 git reset --hard HEAD~1
  5. 绿色分支基于master分支做变基 git rebase master接下来反复执行git rebase --continue即可。

如何保证集成的质量

可以通过设置进行对分支进行保护。

可以在marketplace进行安装检查代码的插件。

怎么给项目增加详细的指导文档

Wiki可以通过markdown进行编写。

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 创建团队的项目
  • 怎么选择适合自己团队的工作流
    • 主干开发
      • Git Flow
        • Github Flow
          • GitLab Flow(带生产分支)
            • GitLab Flow(带环境分支)
              • GitLab Flow(带发布分支)
              • 如何挑选合适的分支集成策略
              • 启用issue跟踪需求和任务
              • 如何用project管理issue
              • 项目内部实施code review
              • 团队协作时如何做多分支的集成
                • Create a merge commit
                  • Squash and merge
                    • Rebase and merge
                    • 如何保证集成的质量
                    • 怎么给项目增加详细的指导文档
                    相关产品与服务
                    Prowork 团队协同
                    ProWork 团队协同(以下简称 ProWork )是便捷高效的协同平台,为团队中的不同角色提供支持。团队成员可以通过日历、清单来规划每⽇的工作,同时管理者也可以通过统计报表随时掌握团队状况。ProWork 摒弃了僵化的流程,通过灵活轻量的任务管理体系,满足不同团队的实际情况,目前 ProWork 所有功能均可免费使用。
                    领券
                    问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档