• 【Git】测试部Git使用规范


    测试部 Git 使用规范

    Version: 1.0

    Writer: Shengjie

    Date: 2020/3/6

    前言

    代码版本管理工具在多人协作的场景下有着非常重要的作用,此使用规范的编写旨在解决以下问题:

    1. 多人共同维护一个仓库时的代码冲突问题;
    2. 针对不同版本的软件测试时,测试代码的兼容性问题;
    3. 代码提交记录的可读性问题等。

    多人共同维护一个仓库时的代码冲突问题

    首先,确定仓库里现在的几个分支的作用,以 Repo_Test 为例:

    master // 主分支,能够稳定运行测试代码的分支,用于主版本测试 Commiter: All tester
    daily_test // 每日构建分支,用于每日自动测试 Tengine develop 分支,供研发使用。只要确保能跑就行。Commiter: Shengjie
    

    当需要修改代码时,先从最新的 master 分支切出一个分支来,然后在新分支上开发,测试通过后再合入主分支。

    新分支的命名规则如下:

    type/short description
    =========举例如下========
    feature/add_new_case
    fix/type_error
    

    切换分支的命令:

    master // current branch
    git checkout -b feature/add_new_case // create and checkout to feature/add_new_case from the master branch
    

    合入主分支的命令:

    master // current branch
    git merge feature/add_new_case // merge feature/add_new_case to the master branch
    

    针对不同版本的软件测试时,测试代码的兼容性问题

    通过分支管理来进行不同的版本测试。比如说以下三种情况:

    • 内部版本, eg. 1.10, 1.11, 1.12 可以通过创建分支 version/1.11, version/1.12 进行测试

    • 交付版本, eg. 客户A, 客户B可以通过创建分支 deliver/kha, deliver/khb 进行测试

    • 开源版本, eg. 1.11开源, 1.12开源 可以通过创建分支 open/1.11, open/1.12 进行测试

    分支命名的格式如下:

    内部版本 version/<version number>
    交付版本 deliver/<companyName_versionNumber>
    开源版本 open/<version number>
    

    在每个版本测试完成后,以上分支进行保留,以便今后版本回溯及复用。

    代码提交记录的可读性问题等

    不管是在哪个分支,代码更新后提交时会要求填写一个 commit messege, 这个信息主要用于简述当次代码提交的作用。为使阅读代码的人清楚所提交代码的作用,要求提交信息填写如下:

    [type]:short description
    =========举例如下==========
    [fix]:fix bug
    [feature]:new feature
    [refactor]:refactor code
    [docs]:modify docs
    

    除了以上分支和提交信息的要求,还有一些 git 的有用命令列出如下:

    // scene: when fix bug in master branch, need merge to another branch
    git cherry-pick <commit id>
    // scene: revocation latest commit
    git reset --soft HEAD~ // revocation commit and save the local modify
    git reset --hard HEAD~ // revocation commit and discard the local modify
    ......
    
  • 相关阅读:
    Python学习——Python线程
    Python学习——异常处理
    Python学习——python的常用模块
    Python学习 ——正则表达式
    Python学习——迭代器&生成器&装饰器
    Python学习——内置函数
    Python学习——深浅拷贝
    Python学习——collections系列
    反编译字节码角度分析synchronized关键字的原理
    谈谈数据库隔离级别
  • 原文地址:https://www.cnblogs.com/liushengchieh/p/14572857.html
Copyright © 2020-2023  润新知