• 前端GIT规范


    1 分支规范

    master 主分支
    dev 主开发分支
    hotfix 修复bug分支
    feature 功能开发分支
    1.1 主分支master
    • master分支永远受保护。不可在master分支上开发,进行commit,push操作。

    • master分支只接收merge操作。

    • 每次发布正式上线的稳定版本(发布后第一天),将当前发布版本merge到master分支。

    • master分支的代码永远和线上代码保持同步。

    1.2 主开发分支dev
    • dev分支为主开发分支。可以进行commit,push,merge操作。
    • 一般不在dev分支上进行新功能的开发。dev分支用来做不同分支的代码整合。
    • 每次master发布以后,需要把master的代码merge到dev上。保持比master的代码更新。
    1.3 hotfix分支 hotfix/xxxx
    • hotfix分支是由master分支checkout出来,用于热修复线上bug用。可以进行commit,push,merge操作。
    • 修复完毕经验证后直接发布。发布完成后merge到master分支。
    1.4 功能开发分支 feature/xxxx
    • 用来进行新功能开发的分支。此分支由dev分支checkout出来,可以进行commit,push,merge操作。
    • 按照功能或者版本可以同时checkout多个feature分支并行开发。开发完毕统一merge回dev。

    2 工作流程

    2.1 新功能开发
    • 从dev分支checkout开发分支,如feature/new。
    • 开发完成后提交测试。测试通过后由发布负责人(一般为团队leader)修改package.json上的版本号,填写changelog。
    • 正式发布完成后,由发布负责人把发布的版本merge到master分支。
    • 最后把master分支merge到dev分支。
    2.2 hotfix热修复
    • 从master分支checkout热修复分支,如hotfix/newbug。
    • 修复完成后提交测试。测试通过后由发布负责人(一般为团队leader)修改package.json上的版本号,填写changelog。
    • 正式发布完成后,由发布负责人把hotfix的merge到master分支。
    • 最后把master分支merge到dev分支。
    2.3 并行开发
    • 从dev分支checkout多个并行开发的分支,如feature/new1,feature/new2,feature/new3...。
    • 开发完成后由发布负责人(一般为团队leader)将并行开发的分支统计后统一合并到dev或者一个新的feature分支上。(主要看短期内是否有多次发布排期)
    • 提交测试。测试通过后由发布负责人修改package.json上的版本号,填写changelog。
    • 正式发布完成后,由发布负责人把发布的版本merge到master分支。
    • 最后把master分支merge到dev分支。

    3 注意点

    • 只要发布到正式环境,不管改动多少,每次都必须版本号变动,同时changelog留下记录。
    • 每次发布到正式环境后一定要记得同步代码回dev。
    • 除了master,dev这三个分支类型外的所有分支都是临时分支。可以适当保留1-2个版本的分支后删除其他分支。
    • 养成良好的习惯,每次开发前,提交代码前先同步代码。

    4 GIT的相关知识点提炼

    4.1 GIT的常用操作
    操作 描述 说明
    git pull 拉取并合并代码 fetch,diff和merge的语法糖,由于会自动执行merge,很容易导致冲突了也没注意到,不推荐
    git fetch origin xxx 拉取远端代码但不合并 推荐
    git merge origin/xxx 合并代码到当前分支 推荐
    git status -s 查看有变动的文件列表
    git branch 查看所有本地分支
    git branch -a 查看本地和远程分支
    git branch -d xxx 删除本地xxx分支 必须不在xxx分支上才能删除
    git checkout xxx 切换到xxx分支上 xxx分支必须存在
    git checkout -b xxx 新建xxx本地分支并切换到xxx分支上 xxx分支必须不存在
    git add . 提交所有本地工作区的改动到本地暂存区
    git commit -m '注释' 提交本地暂存区到对应本地分支上
    git push 将本地分支上的代码推送到远端分支上
    git log 查看当前分支上的commit记录
    git reset --hard xxxx 回复本地版本到xxxx(git log查到的commit记录hash号)
  • 相关阅读:
    nginx相关参考博客
    MySQL workbench8.0 CE基本用法(创建数据库、创建表、创建用户、设置用户权限、创建SQL语句脚本)
    MySQL Workbench基本操作
    idea导入(import)项目和打开(open)项目的区别
    [铁道部信息化管理]需求分析(一)—— 售票系统领域知识(区间票、订票、预留票)
    [铁道部信息化管理]核心业务需求及逻辑架构分析
    【spring boot 系列】spring data jpa 全面解析(实践 + 源码分析)
    OOAD-设计模式(一)概述
    TKmybatis的框架介绍和原理分析及Mybatis新特性
    国内程序员的十大疑问之一:为什么老外不愿意用MyBatis?
  • 原文地址:https://www.cnblogs.com/qianyy/p/12150944.html
Copyright © 2020-2023  润新知