自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

在使用Git時你應該這樣提交代碼

系統(tǒng)
目前業(yè)內做的比較好的,比較具有參考價值的就是知名前端框架AngularJS的提交規(guī)范。

 [[377604]]

1. 前言

目前大部分公司都在使用 Git 作為版本控制,每個程序員每天都要進行代碼的提交。很多開發(fā)者也包括我自己,有時候趕時間或者圖省事,就這么提交:

  1. git commit -m "修改bug,優(yōu)化代碼" 

過了一段,突然去查找一個具體的提交你會發(fā)現(xiàn)不是特別好找。因此我們需要規(guī)范我們的代碼提交來避免這種情況。同時良好的提交規(guī)范也有助于我們生成清晰的 ChangeLog,更利于同事之間的協(xié)作。

如果你想成為知名開源項目的貢獻者更要規(guī)范自己的代碼提交。

2. Git 提交規(guī)范

目前業(yè)內做的比較好的,比較具有參考價值的就是知名前端框架AngularJS的提交規(guī)范。我們先來看一個例子:

Git提交信息

對應的格式:

  1. <type>[optional scope]: <description> 
  2. # 空行 
  3. [optional body] 
  4. # 空行 
  5. [optional footer] 

更嚴格的項目可能提交要求使用英文描述,特別是國際化的開源項目。

根據(jù)上面這個例子我們來了解一下這個業(yè)界比較認可的 Git 提交規(guī)范。

type

refactor 表示本次提交的是重構代碼,也就是它是一個提交的類型type,除了refactor還有:

  • feat 新功能,顧名思義就是新需求的實現(xiàn)。
  • fix 修復,就是對 bug 的修復。
  • docs 文檔,主要用來描述文檔的變更。
  • style 主要是代碼風格相關的提交,比如格式化等。
  • refactor 重構代碼,對已有功能的重構,但是區(qū)別于 bugfix。
  • test 測試相關的提交,不太常用。
  • chore 構建過程或輔助工具的變動,不太常用,比如之前用 Maven,后面換成了 Gradle。

每次提交聲明提交的type是必須的,它讓本次提交的作用一目了然。

scope(可選)

用來表明本次提交影響的范圍,方便快速定位。你可以寫明影響的是哪個模塊(通常是模塊名稱)或者是哪個層(數(shù)據(jù)層、服務層、還是視圖層)。

subject

就是上面的修改版權信息,是對本次提交的簡短描述概括。就像胖哥寫文章要起一個標題一樣,不要過長。

body(可選)

就是比較詳細描述本次提交涉及的條目,羅列代碼功能,這里胖哥習慣用markdown的列表語法,也就是用中劃線換行隔開條目。當然body不是必選的,如果subject能夠描述清楚的話。

foot(可選)

描述與本次提交相關聯(lián)的break change或issue 。

break change

指明本次提交是否產(chǎn)生了破壞性修改,類似版本升級、接口參數(shù)減少、接口刪除、遷移等。如果產(chǎn)生了上述的影響強烈建議在提交信息中寫明break change,有利于出問題時快速定位,回滾,復盤。

issue

如果發(fā)現(xiàn)項目有 bug、或者有優(yōu)化的建議、甚至新增一個任務,就可以利用issue給項目提交一個任務。

Git issue

issue不是一些 Git 平臺的專屬功能,JIRA 等平臺也有類似功能,它們的作用大同小異,都可以很好地反應項目的成長狀況和參與度。那么在 Git 提交時,我們可以在foot區(qū)域關聯(lián)本次提交涉及的issue。

  1. # 涉及issues 
  2. issues  #F12YC,#F45JW 
  3. # 關閉 
  4. Closes #F12YC 

這里沒有固定格式,不過盡量去參考一些知名項目去做。

3. 工具安利

說了這么多,相信你已經(jīng)對 Git 提交的規(guī)范有所了解了。這里推薦一些有用的工具來幫助你將這些規(guī)范落實到位。在Intellij IDEA的插件市場有很多 Git Commit Message 模板插件,可以可視化的實現(xiàn)這些規(guī)范。

Git提交信息插件

本文轉載自微信公眾號「碼農(nóng)小胖哥」,可以通過以下二維碼關注。轉載本文請聯(lián)系碼農(nóng)小胖哥公眾號。

 

責任編輯:武曉燕 來源: 碼農(nóng)小胖哥
相關推薦

2022-04-28 09:02:55

Gitcommitlint配置

2020-11-12 11:55:57

代碼GitJava

2020-11-02 08:21:50

Git辦法代碼

2024-04-08 08:37:41

代碼githook

2021-01-04 13:25:10

Git開源工具

2022-09-23 14:44:31

前端huskyeslint

2009-09-14 09:40:48

微軟Linux代碼

2014-09-23 09:40:09

2022-10-27 09:34:06

git撤銷

2014-12-18 09:49:31

代碼

2012-02-24 09:34:48

SVNGit

2019-09-19 09:18:02

API網(wǎng)關互聯(lián)網(wǎng)

2019-12-04 09:05:15

千萬級流量高并發(fā)

2018-07-10 10:45:00

規(guī)范Commit項目

2013-07-26 11:28:08

Git

2018-07-10 11:05:18

開發(fā)者技能命令

2019-03-28 14:30:21

代碼開發(fā)命令

2020-02-20 10:45:57

代碼JS開發(fā)

2011-09-05 17:12:17

2022-11-04 08:22:14

編譯代碼C語言
點贊
收藏

51CTO技術棧公眾號