【操作】Git版本控制 # 5 相關工作流

github.jpeg

Git操作與git工作流

當我們談論git時,我們首先會想到版本控制和各種命令及概念。git基礎操作請看我的另外一篇文章【操作】git版本控制流入門命令FQ#1

我首先為【Git操作】做一個定義即git命令相關的操作,比如創(chuàng)建分之,合并,提交,撤銷等。

【Git工作流】定義為基于git版本控制工具,通過但不限于git命令的正確使用,用于完成版本控制,軟件交付的整個流程規(guī)范。

git工作流并不是指git相關的操作,當然git相關的操作是git工作流的基礎,git工作流更多的是說明基于git倉庫管理工具如何更好的開展軟件開發(fā)工作的一整套流程和規(guī)范。


git基本操作

業(yè)界主流有三種工作流模式

一 Gitflow工作流

第一種是Gitflow工作流, Gitflow工作流是經典模型,處于核心位置。
以下是一個以gitflow作為工作流的約束范例,可以參考實踐

相關術語

master主干

主分支,產品的功能全部實現后,最終在master分支對外發(fā)布。用于生產環(huán)境發(fā)布的完整代碼庫版本。master主干長期存在,并與生產環(huán)境的版本保持一致。

develop分支

開發(fā)分支,基于master分支克隆,開發(fā)編碼測試工作在此分支進行。主要使用git check -b 命令

Git版本控制,主要約定如下

開發(fā)人員以分支代碼為基準進行開發(fā),測試,并發(fā)布測試環(huán)境。以主干代碼為基準進行灰度環(huán)境,生產環(huán)境上線部署。原則上,當前主干代碼應該以當前線上運行的實際代碼保持一致。

主干合并規(guī)則

用于經過測試同事驗證通過的開發(fā)分支,開發(fā)人員收到測試郵件之后操作,將開發(fā)完成的工作合并到主干分支。主要使用git merge 命令

操作步驟

1 以當前主干為基準進行建立標簽里程碑。標簽標注以當前線上版本號命名。
2 整理代碼,以分支代碼為基準進行合并,更新主干代碼庫。

二 Forking工作流

Forking工作流是分布式github風格的,也叫做github工作流,強調項目fork 和pull request

我們看看go語言開源項目beego的代碼貢獻說明

beego貢獻文檔說明.png

看看官方說明文檔
github工作流程

image.png

iisues

iisues是提交建議,使用問題,軟件bug入口的入口。如果我們想參與一些開源項目,最開始的時候可以從錄入iisues,解決iisues開始。

https://github.com/apache/dubbo-admin/issues/421

github-issues.png

圖片來源參考文檔-對iisues進行標簽識別

官方說明文檔
https://guides.github.com/features/issues/

三 Gitlab工作流

Gitlab flow 的最大原則叫做"上游優(yōu)先"(upsteam first),即只存在一個主分支master,它是所有其他分支的"上游"。只有上游分支采納的代碼變化,才能應用到其他分支。

參考官方文檔 https://docs.gitlab.com/ee/workflow/gitlab_flow.html

在實際的開發(fā)團隊中,三種工作流方式一般都會混合使用,根據團隊特點,做一些整合。比如采用gitlab界面化系統(tǒng)管理代碼,并結合gitflow工作流進行開發(fā)。

本文著重提出了業(yè)界主流的三種git工作流方式,以及每種工作流的主要特點,并沒有細化到具體的使用場景和命令詳情。感興趣的讀者,可以以工作流為主線,參考網上對應的文檔。從根本上認識三種git工作流,有助于深化理解工作中具體的實際操作。

參考資料

https://github.com/oldratlee/translations/blob/master/git-workflows-and-tutorials/README.md

Git三大特色之WorkFlow(工作流)

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內容

  • 多種多樣的工作流使得在項目中實施Git時變得難以選擇。這份教程提供了一個出發(fā)點,調查企業(yè)團隊最常見的Git工作流。...
    JSErik閱讀 4,609評論 2 8
  • Git的使用以及Git協(xié)同工作流的選擇 [TOC] 為什么要使用Git Git 是一個分布式的版本管理工具,而且可...
    ghostdemon閱讀 754評論 0 0
  • Git 規(guī)范 所有使用了本規(guī)范的項目,必須嚴格規(guī)范操作,否則不予以合并代碼、提測、打包上線等后續(xù)操作。 基本要求 ...
    zgsddzwj閱讀 14,265評論 1 14
  • 前言 大家好!在下游回來了!不啰嗦快進正題!本篇文章是面對剛開始接觸Git的新手,所講命令并不全,在文章結束會放入...
    老匡話Android閱讀 4,052評論 -2 18
  • GIT教程 原創(chuàng)者:文思 一、Git基礎 1、認識GIT 有了SVN為何還用GIT? SVN增量式管理,GIT采...
    文思li閱讀 2,665評論 0 0

友情鏈接更多精彩內容