欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

怎樣寫commit?log記錄及如何提交有哪些約定

 更新時(shí)間:2022年06月14日 11:08:54   作者:小姐姐味道  
這篇文章主要為大家介紹了怎樣寫commit?log記錄以及及如何提交有哪些約定,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪

前言

據(jù)說(shuō),80%的程序員,不會(huì)寫commit記錄。這個(gè)比例在無(wú)規(guī)范的小公司,比例會(huì)更高一些,可以看到這是一個(gè)多么普遍的問(wèn)題。

程序員應(yīng)該寫出簡(jiǎn)潔明了的commit log,否則對(duì)別人和自己來(lái)說(shuō)就是一種困擾。最近代碼review多了,總有一股想笑的感覺(jué)。就像下圖這滿屏的ok,永遠(yuǎn)無(wú)法從中得知提交人的意圖。

commit log將如何提交?都有哪些約定?其實(shí)是有答案的。對(duì)于Java程序員,尤其幸福。IDEA有一個(gè)非常好用的插件,可以用來(lái)輔助你進(jìn)行代碼提交,輔助你進(jìn)行團(tuán)隊(duì)規(guī)范建設(shè)。接下來(lái),我將帶大家看一看它的使用方法。

安裝插件

在IDEA的Marketplace中,搜索Git Commit Template,就可以安裝這個(gè)插件。插件很小,很快就能下載下來(lái)。

正常從IDEA提交代碼的時(shí)候。我們發(fā)現(xiàn)多了一個(gè)小按鈕。

點(diǎn)擊之后,將彈出一個(gè)窗口。讓你去設(shè)計(jì)提交模板。

這么多信息,真的讓人頭暈。怪不得程序員們都不喜歡寫提交記錄。

其實(shí),在插件的安裝界面,就已經(jīng)說(shuō)明了這個(gè)提交記錄的格式。

?<type>(<scope>):?<subject>
?<BLANK?LINE>
?<body>
?<BLANK?LINE>
?<footer>

從描述中,可以肯容易的看到一個(gè)提交記錄中,應(yīng)該包含哪些東西。其中類型最多的,當(dāng)然是提交類型。

提交類型Type

我們按照插件顯示的順序來(lái)說(shuō)明一下。

feat 功能feature的意思,也是最常用的。當(dāng)你的功能有變更的時(shí)候,都可以采用這種類型的type

fix 當(dāng)然指的是bug修復(fù)

docs 更新了文檔,或者更新了注釋

style 代碼格式調(diào)整,比如執(zhí)行了format、更改了tab顯示等

refactor 重構(gòu)代碼。指的是代碼結(jié)構(gòu)的調(diào)整,比如使用了一些設(shè)計(jì)模式重新組織了代碼

perf 對(duì)項(xiàng)目或者模塊進(jìn)行了性能優(yōu)化。比如一些jvm的參數(shù)改動(dòng),把stringbuffer改為stringbuilder等

test 這個(gè)簡(jiǎn)單,就是增加了單元測(cè)試和自動(dòng)化相關(guān)的代碼

build 影響編譯的一些更改,比如更改了maven插件、增加了npm的過(guò)程等

ci 持續(xù)集成方面的更改。現(xiàn)在有些build系統(tǒng)喜歡把ci功能使用yml描述。如有這種更改,建議使用ci

chore 其他改動(dòng)。比如一些注釋修改或者文件清理。不影響src和test代碼文件的,都可以放在這里

revert 回滾了一些前面的代碼

除了這些預(yù)設(shè)的,團(tuán)隊(duì)還可以按照自己的需求,增加新的type。比如專門處理線上工單,就可以創(chuàng)造一個(gè)叫做ticket的類型。

范圍scope

scope是范圍的意思,主要指的是代碼的影響面。scope并沒(méi)有要求強(qiáng)制,但團(tuán)隊(duì)可以按照自己的理解進(jìn)行設(shè)計(jì)。通常由技術(shù)維度和業(yè)務(wù)維度兩種劃分方式。比如按照技術(shù)分為:controllerdto、servicedao等。但因?yàn)橐粋€(gè)功能提交,會(huì)涉及到多個(gè)scope(都不喜歡非常細(xì)粒度的提交),所以按照技術(shù)維度分的情況比較少。

按照業(yè)務(wù)模塊進(jìn)行劃分,也是比較不錯(cuò)的選擇。比如分為userorder等劃分,可以很容易看出是影響用戶模塊還是order模塊。

如果你實(shí)在不知道怎么填,那就留空。

其他

主題subject

這個(gè)體現(xiàn)的是總結(jié)概括能力,沒(méi)得跑。一句話能夠說(shuō)明主要的提交是什么。subject也是眾多git管理工具默認(rèn)顯示的一行。如果你寫的標(biāo)準(zhǔn),那么提交記錄看起來(lái)就很漂亮很規(guī)整。

正文Body

主要填寫詳細(xì)的改動(dòng)記錄。我一般習(xí)慣列上1234,但如果你的subject寫的非常好,正文可以直接弱化。但如果時(shí)間充裕,填寫上重要記錄的前因后果,需求背景,是一個(gè)好的習(xí)慣。

尾部Footer

添加一些額外的hook,比如提交記錄之后,自動(dòng)關(guān)閉jira的工單(JIRA和gitlab等是可以聯(lián)動(dòng)的)。在比如觸發(fā)一些文檔編譯或者其他動(dòng)作。

這部分自定義行也是比較強(qiáng)的。

Skip CI

最后還有一個(gè)skip CI選項(xiàng)。一般的ci工具,都可以設(shè)置提交代碼時(shí)自動(dòng)觸發(fā)編譯。但你可以告訴它忽略本次提交。這可能是因?yàn)槟闾崆邦A(yù)判到了一些構(gòu)建風(fēng)險(xiǎn),或者就是不想編譯。

End

最后,看一個(gè)典型的提交記錄,有了工具的支持,我們的瞎扯也看得正經(jīng)起來(lái)。

fix(order):?修復(fù)了1分錢買汽車的bug
商務(wù)反饋可以1分錢買汽車,目前已經(jīng)賣出了100w量
Closes?#2455
[skip?ci]

其實(shí),提交的核心是typesubject。一個(gè)用來(lái)表示它的提交類型,一個(gè)用來(lái)對(duì)提交進(jìn)行概括性總結(jié),寫好了這兩點(diǎn),就能輕輕松松秒殺80%的程序員了。

有了這些基礎(chǔ),從commit log,自動(dòng)生成change log,就變的非常的容易。配合持續(xù)集成平臺(tái),自動(dòng)生成發(fā)版的變更記錄,也是可行的,這也是為什么團(tuán)隊(duì)管理,都在一直強(qiáng)調(diào)git的提交規(guī)范。因?yàn)樗_實(shí)非常有用。

以上就是怎樣寫commit log記錄及如何提交有哪些約定的詳細(xì)內(nèi)容,更多關(guān)于commit log記錄提交約定的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • 解決vs?code通過(guò)remote-ssh遠(yuǎn)程到ubuntu頻繁掉線問(wèn)題

    解決vs?code通過(guò)remote-ssh遠(yuǎn)程到ubuntu頻繁掉線問(wèn)題

    這篇文章主要介紹了vs?code通過(guò)remote-ssh遠(yuǎn)程到ubuntu頻繁掉線問(wèn)題解決方法,這個(gè)解決方案只要用自己安裝的Git替換掉windows本身的Git工具,需要的朋友可以參考下
    2022-09-09
  • transform實(shí)現(xiàn)HTML5 video標(biāo)簽視頻比例拉伸實(shí)例詳解

    transform實(shí)現(xiàn)HTML5 video標(biāo)簽視頻比例拉伸實(shí)例詳解

    這篇文章主要介紹了transform實(shí)現(xiàn)HTML5 video標(biāo)簽視頻比例拉伸的相關(guān)資料,需要的朋友可以參考下
    2016-09-09
  • php asp.net 比較 [推薦]

    php asp.net 比較 [推薦]

    如今當(dāng)提到 Web 開(kāi)發(fā)時(shí),您有許多選擇。這些方法中許多都涉及到預(yù)處理 - 即,利用特定的標(biāo)記將代碼嵌入到 HTML 頁(yè)面中
    2009-06-06
  • 真?zhèn)戊o態(tài)區(qū)別方法分析

    真?zhèn)戊o態(tài)區(qū)別方法分析

    有些用戶覺(jué)得,偽靜態(tài)和真靜態(tài)實(shí)際被收錄量會(huì)相差非常大,其實(shí)不然,從你個(gè)人角度,你去判斷一下一個(gè)帖子到底是真靜態(tài)還是偽靜態(tài)?
    2010-01-01
  • 淺析git 刪除某次指定的提交問(wèn)題

    淺析git 刪除某次指定的提交問(wèn)題

    這篇文章主要介紹了git 刪除某次指定的提交問(wèn)題,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的的朋友參考下吧
    2020-07-07
  • git使用教程(最詳細(xì)、最傻瓜)

    git使用教程(最詳細(xì)、最傻瓜)

    這篇文章主要介紹了git使用教程(最詳細(xì)、最傻瓜),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-07-07
  • 完美解決webstorm啟動(dòng)索引文件卡死的問(wèn)題

    完美解決webstorm啟動(dòng)索引文件卡死的問(wèn)題

    下面小編就為大家分享一篇完美解決webstorm啟動(dòng)索引文件卡死的問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2017-11-11
  • 從git倉(cāng)庫(kù)中刪除.idea文件夾的小妙招

    從git倉(cāng)庫(kù)中刪除.idea文件夾的小妙招

    這篇文章主要介紹了從git倉(cāng)庫(kù)中刪除.idea文件夾的小妙招,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2021-01-01
  • PHP VBS JS 函數(shù) 對(duì)照表

    PHP VBS JS 函數(shù) 對(duì)照表

    PHP VBS JS 函數(shù) 對(duì)照表,大家可以參考下。
    2010-03-03
  • 使用VSCode如何從github拉取項(xiàng)目的實(shí)現(xiàn)

    使用VSCode如何從github拉取項(xiàng)目的實(shí)現(xiàn)

    這篇文章主要介紹了使用VSCode如何從github拉取項(xiàng)目的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-08-08

最新評(píng)論