• Geek_c3e438
    2021-06-08
    哈哈哈哈,上文刚说了commit规范,这篇就随意了,当然知道仅做演示,开个玩笑~

    作者回复: 是的,这里主要是演示工作流个演示。这里没有按commit message规范写的原因如下: 1. 根据我的研发经验,很多时候,规范对大多数开发者是用来看的,所以如果制定了commit message规范,需要有相应的工具,来强约束大家遵守这个规范,因为是演示所以没搞这么复杂。 2. IAM项目的commit 都是符合规范的,里面有工具强约束,可以看下。 老哥看的很细,是个优化点,今后避免。

    共 2 条评论
    28
  • 💎A
    2021-06-08
    用source tree 一键git flow.

    作者回复: 牛批!

    共 2 条评论
    10
  • grandgraph
    2021-06-30
    如何保证develop和master分支不会产生冲突呢?

    作者回复: 他俩不会冲突的吧,有冲突在merge到develop的时候就解决了

    
    7
  • 我来也
    2021-07-05
    看的比较过瘾。 这些git命令,我一般都用zsh里面git插件的缩写来完成。说白了就是一批alias命令。 比如gcb切分支,gsta保存修改到堆栈,gstp恢复堆栈中的修改,gpsup新建远端分支。grb变基,grh 软重置,grhh硬重置等等。

    作者回复: 优秀!

    
    6
  • forever_ele
    2021-08-06
    说一下我这边的Git工作流经验:我们会预设三个常驻分支,分别是 Prod-生产分支、Pre-Prod-预发布分支、Dev-开发分支,master保留分支未使用。当有新功能需要开发时,首先是从prod分支进行拉取个人开发分支,因为此时dev可能会有其他同学开发的其他需求代码,但实际发布时间未知,为了避免新功能发布时包含其他需求代码所以要从prod分支新建个人开发分支,保证分支是“干净的”。个人本地开发测试后 合并dev分支进行线上测试,没有问题再将分支合并至pre交付客户或非技术部门进行uat测试。最后将个人开发分支合并prod进行发布。

    作者回复: 流程很清晰呀

    
    5
  • Alery
    2021-06-09
    请问Forking 工作流中git rebase upstream/master 这一步是做什么?

    作者回复: 合并master分支的代码,跟git merge相比,可以避免很多自动生成的merge记录

    共 3 条评论
    5
  • types
    2021-07-30
    看了git flow, tag都是在master上标记的,看起来只支持单个发行版本。 如果我需要维护多个发行版本,多个发行版本有共性需求,也有各自的定制化需求,请问这个时候应该以 什么样的流程进行开发?

    作者回复: tag是不区分branch的。 比如你在develop分支打了v1.0.0 tag,切换到v1.0.0 tag时,git会自动切换到develop分支的v1.0.0 tag。 如果要维护多个发行版,可以分多个repo,但不好管理。建议这么来: 基础版本分支: master 发行版A: masterA/feature/xxx masterA/develop 发行版B: masterB/feature/xxx masterB/develop

    共 2 条评论
    3
  • 崔子昂
    2021-06-28
    很多公司会用Jira这种issue管理系统,而branch name用issue code的话,会有一些联动性的功能,比较纠结如果用功能名的话,就失去这个方便的地方了。

    作者回复: 可以根据需要自己指定branch名规范,如果有这种联动性需求,其实也可以适配

    
    3
  • theseusv
    2021-06-08
    催更催更~

    作者回复: 我们加油

    
    3
  • Juniper
    2021-09-24
    看完这篇文章,受益匪浅。不过有个疑问,如果采用git flow模式,提测的时候提release分支测试的,如果我有一个release1.0.0的分支在测试中,这个时候又有新的开发任务了,从develop分支切出来,此时的develop分支代码只经过开发测试,还非常不稳定,对于新的feature分支影响还是比较大的,怎么解决。严格安照串行的方式是没有问题的,release1.0.0验证完成,master develop merge完成发布,然后在开始进入下个功能的开发。但是现实场景很容易出现,上一个版本还是测试阶段,就有别的开发任务了

    作者回复: 好问题。 等release1.0.0分支的修复合并到develop分支后,后来新建的分支再rebase下develop分支就可以了。

    
    2