zoukankan      html  css  js  c++  java
  • 软件开发工作流-GitFlow

    搞开发的相信大部分人git天天都在用,那么一般我们在实际工程当中,遵循一个合理、清晰的Git使用流程,是非常重要的。否则,每个人都提交一堆杂乱无章的commit,项目很快就会变得难以协调和维护。那么是如何来规范整个流程的呢 ;
    
    标准其实很多,这里我们介绍下Gitflow;
    
    什么是Gitflow
    
    Gitflow是基于Git的强大分支能力所构建的一套软件开发工作流,最早由Vincent Driessen在2010年提出。最有名的大概是下面这张图。
    
    
    
    
    
    
    
    那么针对这个规范我们来看下如何在实际使用中来应用整个流程
    
    1、分支说明
    
    主要分两种 主分支 和 支援性分支
    
    ●     主分支 : 分支目录為单层,分支永久保留
    
    ○     develop : 当 feature branches 开发完成后,提供测试时,请合并到此,此分支不做任何的程序修改和变更集,只接受 master 和 feature branches 的合并
    
    ○     master : 永远处在 production-ready 状态
    
    ●     支援性分支 : 分支层级为双层,合并后且沒使用可刪除
    
    ○     feature branches : 新功能开发,分支的建立都以 master 為来源
    
    ○     hotfix branches : 临时需修改的 bug ,分支的建立都以 master 為來源 
    
    ○     release branches: 提供 Marketing 测试,预计要上线的版本,分支的建立都以 master 為來源,且在合并要测试的 feature branches,合并完成后请设定 Tag,Tag 的內容為合并的 feature branches
    
     
    
    2、分支的来源和合并
    
    
    
    
    ●     主分支
    
    ○     develop
    
    ■     来源 : master, feature branches
    
    ■     合并 : 无
    
    ○     master
    
    ■     来源 : 无
    
    ■     合并 : release branches, develop
    
    ●     支援性分支 : 分支层级為双层
    
    ○     feature branches
    
    ■     来源 : master
    
    ■     合并 : release branches, develop
    
    ○     hotfix branches
    
    ■     来源 : master
    
    ■     合并 : release branches, develop, master
    
    ○     release branches
    
    ■     来源 : master, feature branches
    
    ■     合并 : master
    
     
    
    3、支援性分支命名
    
    ●     feature branches : 依功能命名
    
    ○     ex: 开发的新功能为 FeedbackDashboard,请命名为 feature/FeedbackDashboard
    
    ●     hotfix branches : 依修改的 bug 命名
    
    ○     ex: 修改 Invoice 的显示错误,请命名为 hotfix/Invoice
    
    ●     release branches : 因為合并多个 feature branch,需依日期命名
    
    ○     ex: release/20171013
    
     
    
    4、分支对应环境
    
    ●    主分支
    
    ○     develop : 开发环境
    
    ○     master : 生产环境
    
    ●     支援性分支
    
    ○     feature branches : 无
    
    ○     hotfix branches : 无
    
    ○     release branches : 沙箱环境
    
     
    
    5、Git 常用指令
    
    请安裝 Git Windows : https://git-scm.com/download/win
    
    ●     分支合并
    
    ○     git merge feature/xxx --no-ff
    
    ○     :ws!
    
    ●     同步远端分支
    
    ○     git remote update
    
    ○     git remote update origin --prune
    
    ●     加入 dll 到 Git
    
    ○     git add xxx.dll -f
    
    ●     还原本机所有变更集
    
    ○     git reset --hard HEAD~
    
    ●     建立 Tag
    
    ○     git tag -a tagName
    
    ●     同步 Tag 到远端
    
    ○     git push origin tagName
    
    ●     查询 Tag 的內容
    
    ○     git show tagName
    
    ●     刪除 Tag
    
    ○     git push -d origin tagname
    
    ○     git -d tagname

  • 相关阅读:
    Super
    多态
    方法覆盖 和toString方法的作用
    Static 静态+this
    构造方法 + 继承
    使用方法重载的优缺点
    Erlang 简介与样例分析
    Assassin's Creed 4: Black Flag --《刺客信条4; 黑旗》
    DEVIL MAY CRY V:《鬼泣5》
    Valiant Hearts: The Great War -- 《勇敢的心》
  • 原文地址:https://www.cnblogs.com/lyl6796910/p/13785317.html
Copyright © 2011-2022 走看看