如何淺析GitLabFlow的十一個(gè)規(guī)則

本篇文章為大家展示了如何淺析GitLab Flow的十一個(gè)規(guī)則,內(nèi)容簡(jiǎn)明扼要并且容易理解,絕對(duì)能使你眼前一亮,通過這篇文章的詳細(xì)介紹希望你能有所收獲。

成都創(chuàng)新互聯(lián)是一家專業(yè)提供德欽企業(yè)網(wǎng)站建設(shè),專注與成都網(wǎng)站建設(shè)、成都做網(wǎng)站、HTML5建站、小程序制作等業(yè)務(wù)。10年已為德欽眾多企業(yè)、政府機(jī)構(gòu)等服務(wù)。創(chuàng)新互聯(lián)專業(yè)網(wǎng)站制作公司優(yōu)惠進(jìn)行中。

使用 Git  版本控制,是對(duì)使用它之前的所有版本控制方式的一種改進(jìn)。然而,很多組織最終以太過混亂或過于復(fù)雜的流程來結(jié)束。這個(gè)問題對(duì)于剛從其他版本控制系統(tǒng)轉(zhuǎn)過來的組織來說特別突出。

我們會(huì)列出 GitLab 工作流 的11條規(guī)則,以幫助簡(jiǎn)化、整理工作流程。這些規(guī)則最主要的益處是(或我們希望是)  它能夠簡(jiǎn)化流程并且產(chǎn)生一個(gè)更高效和更清楚的成果。

我們認(rèn)為總會(huì)有可改善的空間,并且每一次改善都是草案。一如既往,每個(gè)人都可以做出貢獻(xiàn)!反饋和提意見是非常受歡迎的。

1. 使用功能分支,不直接提交到master。

如果你從  SVN過來,例如,你將習(xí)慣于基于trunk的工作流。當(dāng)使用Git的時(shí)候,你應(yīng)該為你做的任何事情創(chuàng)建一個(gè)分支,以便你以merge前的代碼評(píng)審作為結(jié)束。

2. 測(cè)試所有的提交,不僅僅是master上的提交。

一些人設(shè)置他們的CI僅僅測(cè)試那些被合并到master的提交。這太遲了;對(duì)于master總是綠色的測(cè)試人們應(yīng)感到有信心。對(duì)人們來說在他們開始開發(fā)新功能前不得不測(cè)試master是沒有意義的,例如,CI不是很昂貴,所以按這種方式做才有意義。

3. 在所有的提交上運(yùn)行所有的測(cè)試(如果運(yùn)行測(cè)試多于5分鐘,并行運(yùn)行它們)。

如果你工作在一個(gè)特性分支并添加新提交,然后在那個(gè)分支運(yùn)行測(cè)試。如果測(cè)試花費(fèi)較長(zhǎng)時(shí)間,試著并行的運(yùn)行它們。在服務(wù)端的合并請(qǐng)求運(yùn)行所有的測(cè)試套件。如果你有一個(gè)服務(wù)于開發(fā)的測(cè)試套件,另一個(gè)僅僅是對(duì)新版本的,那么值得設(shè)置并行測(cè)試,分別運(yùn)行它們。

4. 在合并到master前執(zhí)行代碼評(píng)審,而非事后。

不要在一周結(jié)束的時(shí)候測(cè)試所有的東西。 當(dāng)場(chǎng)做,因?yàn)槟銜?huì)更容易抓住可能導(dǎo)致問題的事情,其他人也會(huì)努力想出解決方案。

5. 部署是自動(dòng)的,基于分支或基線。

如果你不想每次部署master,可以創(chuàng)建一個(gè)生產(chǎn)分支。但是這里沒有理由為什么你可能使用一個(gè)腳本或登錄到某個(gè)地方手動(dòng)部署。讓一切自動(dòng)化,或者一個(gè)特定的分支觸發(fā)一次生產(chǎn)部署。

6. 基線是人為創(chuàng)建,而不是CI創(chuàng)建。

用戶創(chuàng)建一個(gè)基線,基于那個(gè)基線,CI將執(zhí)行一個(gè)操作。你不應(yīng)該讓CI更改代碼倉(cāng)庫(kù)。如果你需要非常詳細(xì)的指標(biāo),您應(yīng)該有一個(gè)服務(wù)器報(bào)告列出了新版本。

7. 依賴tags版本進(jìn)行發(fā)布

如果你為你的項(xiàng)目生成tag,這表示你發(fā)布了一個(gè)新版本。

8.絕不以重置方式提交變更

如果你將一個(gè)項(xiàng)目的變更提交到一個(gè)公共的分支上,你不應(yīng)該使用重置方式(即不應(yīng)用 git rebase),

否則將造成難以追蹤你對(duì)該項(xiàng)目的改善和相應(yīng)的測(cè)試結(jié)果,這樣做實(shí)際上破壞了他人選擇最有利于的版本的依據(jù)。

我們有時(shí)也違反這條準(zhǔn)則,當(dāng)我們要求一個(gè)貢獻(xiàn)者使用(git merage  --spansh)提交他的修改,以便提供真實(shí)的修改歷史,忽略他本地不規(guī)范的修改歷史時(shí)。這樣做以后查閱修改歷史時(shí),容易根據(jù)修改歷史做版本恢復(fù)。但是總而言之  推薦做法為:代碼應(yīng)該純凈,修改歷史應(yīng)該真實(shí)。

9. 每個(gè)人都應(yīng)該從主支開始,并一直以主支為基礎(chǔ)。

這意味著你不從任何分支開始。你檢出主支內(nèi)容,然后創(chuàng)建你的特性,提交你的合并請(qǐng)求,下次修改還是以主支為基礎(chǔ)。在你合并內(nèi)容到主枝上時(shí),你應(yīng)該完成審查,不應(yīng)該包含其他中間階段的內(nèi)容。

10. 先修改主支中的錯(cuò)誤,之后發(fā)布分支。

如果你發(fā)現(xiàn)一個(gè)bug,最差的事是你修改了剛發(fā)布的版本,而未修改主支。

避免這種情況發(fā)生,你應(yīng)該總是先修改主枝,之后再發(fā)布另外一個(gè)版本用來修復(fù)已發(fā)布版本中的錯(cuò)誤。

11. 提交的信息中反應(yīng)你修改部分的意圖

你應(yīng)該不止說明你做了什么,還應(yīng)該說明你為什么這么做。如果你解釋為什么這么做而沒有使用其他方式,這將會(huì)更有用。

上述內(nèi)容就是如何淺析GitLab Flow的十一個(gè)規(guī)則,你們學(xué)到知識(shí)或技能了嗎?如果還想學(xué)到更多技能或者豐富自己的知識(shí)儲(chǔ)備,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。

文章題目:如何淺析GitLabFlow的十一個(gè)規(guī)則
當(dāng)前URL:http://muchs.cn/article14/ihsige.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供搜索引擎優(yōu)化品牌網(wǎng)站建設(shè)、全網(wǎng)營(yíng)銷推廣、動(dòng)態(tài)網(wǎng)站、商城網(wǎng)站網(wǎng)站制作

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

h5響應(yīng)式網(wǎng)站建設(shè)

網(wǎng)站設(shè)計(jì)公司知識(shí)