美文网首页
git 主仓fork方式开发

git 主仓fork方式开发

作者: DDstar | 来源:发表于2020-08-21 12:03 被阅读0次

    前言

    之前一直使用的事单个仓库多人开发的模式,仓库添加开发者开发权限,开发者可以直接往仓库里推送代码,创建分支,合并分支。这种情况在多人同时操作一个仓库的话造成管理混乱。还有就是每个人开发都可以自己写一些测试代码,在提交代码的时候可能会把测试代码都提交上去,即使提交代码有review功能,也只能在合并分支的时候才能做区分哪些合并哪些不合并。所以就有升级的使用方式,主仓和私仓。

    主仓和私仓

    • 主仓,就是中央主仓库,公司最新和稳定的代码都是在主仓里,主仓专人管理,每次代码合并都是其他开发者提交合并请求,管理者review代码完才合并进主仓。
    • 私仓就是开发者的开发环境仓库,这些仓库的代码是从主仓fork下来的代码,当然可能fork的只是主仓的部分分支,不一定要所有分支,可以只关注自己开发的内容就可以。

    开发流程

    简单说一下这个代码的管理和开发流程

    1. 产品提交了一个需求,前期需求都评审完开始进入开发阶段
    2. 主仓管理员创建开发分支
    3. 分配到的任务开发者私仓 fetch主仓代码同步主仓的分支
    4. 任务开发者checkout主仓分支到本地进行代码开发
    5. 开发完成提交的任务开发者私仓
    6. 提交合并请求到主仓
    7. 主仓管理者review代码,并合并代码到主仓
    8. 自动化打包给到测试
    9. 测试反馈问题,开发者修改,重复5-8
    10. 测试完成产品验收
    11. 主仓管理者合并代码到master,打包发版

    上代码

    首次fork主仓

    • 使用gitlab或者github都可以直接fork主仓的代码到自己的私仓(自己用户下的仓库)
    • git clone私仓代码到本地
    git clone <私仓git地址>
    
    • 本地创建主仓关联
    git remote add <主仓标识 以下用center> <主仓git地址>
    
    • 查看分支关系
    git remote -v
    

    操作无误的话会有

    center git主仓地址(fetch)
    center git主仓地址(push)
    
    origin git私仓地址(fetch)
    origin git私仓地址(push)
    

    以下适用非首次fork

    • 查看任务任务分支
    git branch -a
    

    可以看到私仓和主仓的所有远端分支
    假设主仓的任务分支是 feature/task_211
    就能看到

    remotes/center/feature/task_211
    
    • 将主仓任务分支check到本地分支
    git checkout -b feature/task_211 center/feature/task_211
    

    成功后本地就有feature/task_211 分支 并且是同步center的任务分支

    • 开始开发开发开发
    write fuck code
    
    • 开发有进度就可以commit 但是是提交到自己的私仓中
    git commit -m "balabla"
    git push origin
    

    这样就成功提交到自己的私仓

    • 任务都开发完,要提交测试了,提交合并请求到主仓
      这个在gitlab平台可以新建pullrequest github也行

    然后又问题修复就循环上面改代码 提交请求的操作

    剩下打包的就交给主仓管理者把~~~

    相关文章

      网友评论

          本文标题:git 主仓fork方式开发

          本文链接:https://www.haomeiwen.com/subject/hllujktx.html