加入星計(jì)劃,您可以享受以下權(quán)益:

  • 創(chuàng)作內(nèi)容快速變現(xiàn)
  • 行業(yè)影響力擴(kuò)散
  • 作品版權(quán)保護(hù)
  • 300W+ 專業(yè)用戶
  • 1.5W+ 優(yōu)質(zhì)創(chuàng)作者
  • 5000+ 長(zhǎng)期合作伙伴
立即加入
  • 正文
    • 1、Git的安裝與使用
    •  
    •  
    • 2、Git的使用規(guī)范
    •  
    • 3、工欲善其事必先利其器
  • 相關(guān)推薦
  • 電子產(chǎn)業(yè)圖譜
申請(qǐng)入駐 產(chǎn)業(yè)圖譜

Git版本控制工具使用說(shuō)明和規(guī)范

2021/02/25
223
閱讀需 9 分鐘
加入交流群
掃碼加入
獲取工程師必備禮包
參與熱點(diǎn)資訊討論

windows環(huán)境下的Git版本控制工具使用說(shuō)明和規(guī)范。

目錄

1 Git的安裝與使用

2 Git的使用規(guī)范

3 工欲善其事必先利其器

1、Git的安裝與使用

1.1 前言

Git 是Linux 開(kāi)源社區(qū)為L(zhǎng)inux的開(kāi)發(fā)與維護(hù)而開(kāi)發(fā)的一個(gè)項(xiàng)目,目前已被廣泛應(yīng)用,關(guān)于版本控制工具各有特點(diǎn),本部門全部使用git,軟件開(kāi)發(fā)前必須熟練掌握git的使用,以及遵守相應(yīng)操作規(guī)范。

1.2 安裝

初次接觸Git的用戶,請(qǐng)抽出幾分鐘時(shí)間看一下https://git-scm.com/docs 的介紹文檔,相信磨刀不誤砍柴工。

Git 地址:https://git-scm.com/downloads

服務(wù)器端已經(jīng)安裝在內(nèi)網(wǎng)服務(wù)器,本文針對(duì)Window平臺(tái)的Git客戶端的安裝和使用。

1、安裝TortoiseGit-2.5.0.0-64bit.msi 一路下一步,這只是安裝了git的內(nèi)核功能,要在windows下操作,需要安裝界面外殼。

2、安裝GitExtensions-2.50.02-SetupComplete.msi 或者 Git-2.15.0-64-bit.exe,這是兩種風(fēng)格的界面,主體功能差不多,個(gè)人選擇的是后者,也可以兩個(gè)都安裝。

3、安裝過(guò)程中出現(xiàn)較多的配置,所有選項(xiàng)中,全部都選帶windows關(guān)鍵字的,否則用起來(lái)看不出問(wèn)題,但是保存的記錄異常。既然是界面操作,就開(kāi)啟鼠標(biāo)右鍵的快捷圖標(biāo)。

后續(xù)一些安裝選項(xiàng),全部選帶windows關(guān)鍵字的。

4、安裝完成后,鼠標(biāo)右鍵,會(huì)出現(xiàn) Git GUI Here。

 

 

5、如果是新手可安裝漢化補(bǔ)丁TortoiseGit-LanguagePack-2.5.0.0-64bit-zh_CN.msi。

 

1.3 基礎(chǔ)演示

1、配置

 

其中用戶名必須使用自己名字的全拼,不要使用簡(jiǎn)寫(xiě)或者其他特殊字符,以方便后期檢索跟蹤修改記錄。 

2、創(chuàng)建本地版本庫(kù),git creat repository here,默認(rèn)操作,即可創(chuàng)建版本,會(huì)在test空文件夾下生成.git 。 

3、在test下隨便改動(dòng),如新加123.txt,提交改動(dòng)。此時(shí)鼠標(biāo)右鍵效果如下:

 

 

4、編輯本次修改記錄 修改記錄必須簡(jiǎn)潔清晰,具體規(guī)范參考下一章。

 

 

5、保存本次修改后,使用Git GUI Here->Repository->Visualize master’s History查看全部版本記錄。

 

6、提交到遠(yuǎn)程服務(wù)器

 

 

7、同步遠(yuǎn)程分支

 

有時(shí)候提示提交推送失敗,先確定是否服務(wù)器有新節(jié)點(diǎn),先同步、合并(rebase)后再提交。 

 

8、分支合并

 

一般選擇rebase,但其實(shí)它有缺點(diǎn)。特別提醒,進(jìn)行reabse前先將當(dāng)前分支新加分支名,以防操作失敗,節(jié)點(diǎn)錯(cuò)亂導(dǎo)致當(dāng)前節(jié)點(diǎn)消失。合并后必須先編譯驗(yàn)證了再提交。

9、通用配置和常用功能

 

1.4 總結(jié)

Git的使用尤其是多人合作,注意以下幾點(diǎn):

1、推送服務(wù)器前先同步; 

2、兩個(gè)分支版本有沖突,先rebase解決,不熟練的情況下暫時(shí)不要使用merge; 

3、版本節(jié)點(diǎn)不能使用中文,修改描述可以,關(guān)于修改描述的規(guī)范見(jiàn)下一章; 

4、編譯自動(dòng)生成的臨時(shí)文件不要提交,可以使用TortoiseGit–>Delete and add in ignore list,可過(guò)濾指定的文件,即使有改動(dòng)也不提交;

5、Git自帶的比較工具比較差,可以配置使用外部比較工具。

一共三處,將Diff viewer和Merge Tool改為HA-BCompare。

 

 

這個(gè)工具的比較功能強(qiáng)大,顯示界面清晰。

 

 

2、Git的使用規(guī)范

1.1 用戶名

為保證問(wèn)題跟蹤方便,歷史修改記錄溯源,首次提交前必須設(shè)置用戶名和郵箱,尤其是用戶名,必須使用自己名字的小寫(xiě)全拼,不得使用簡(jiǎn)稱或者特殊代號(hào)。

1.2 分支名

  1. 功能接近的項(xiàng)目,盡量使用功能宏或者項(xiàng)目宏,從軟件源碼上減少分支;分支名稱使用大寫(xiě)字母和下劃線,不能包含空格或中文;臨時(shí)測(cè)試或驗(yàn)證某個(gè)功能的分支,必須以TEST_開(kāi)頭,驗(yàn)證無(wú)誤,且應(yīng)用到正式項(xiàng)目后,最好刪除遠(yuǎn)程分支;某個(gè)版本基礎(chǔ)上小改動(dòng),為解決生產(chǎn)或者客戶問(wèn)題的版本,必須以PATCH_開(kāi)頭,表示當(dāng)前分支只是特殊情況下使用,后續(xù)正式版本不再繼續(xù)維護(hù)升級(jí);因?yàn)樾枨笞兏?,原XXX項(xiàng)目不得不分成2個(gè)分支,分支命名為XXX_AA和XXX_BB,其中AA和BB是兩個(gè)分支的主要區(qū)別關(guān)鍵字,前面一樣,表示兩分支原屬于同一個(gè)分支節(jié)點(diǎn);若后續(xù)XXX_BB繼續(xù)拆分,則新分支為XXX_BB_CC和XXX_BB_DD,依次類推;禁止使用XXX1 XXX2 XXX3 這種分支名,禁止設(shè)分支名為master。個(gè)人測(cè)試或者reabse前的遠(yuǎn)程分支,原作者確認(rèn)已經(jīng)不再需要的,必須刪除遠(yuǎn)程分支,簡(jiǎn)化版本分支樹(shù)形結(jié)構(gòu)。

 

1.3 注釋

修改記錄規(guī)范化是本文的重點(diǎn),注釋按如下格式編寫(xiě):

[type] message

每行內(nèi)容不超過(guò)50字, type 用于指定提交的 commit 的類別,只允許以下幾個(gè)動(dòng)詞原語(yǔ):

release 發(fā)布軟件時(shí)使必須有,且在第一行,后面內(nèi)容是版本號(hào)

add  新增加的功能 

fix  修復(fù)某個(gè) bug 的描述 

update  升級(jí)完善原有的基礎(chǔ)功能上 

change 需求變更或者實(shí)現(xiàn)的方案改變 

docs  更新文檔 

test  增加/修改測(cè)試示例代碼 

merge/rebase在解決代碼沖突,合并分支時(shí)使用 

create  初次創(chuàng)建新項(xiàng)目時(shí)使用 

remove  刪減代碼時(shí)使用 

patch 集成合并SDK補(bǔ)丁

message 用于指定提交的描述文字,需要注意幾個(gè)事項(xiàng)。

1、使用中文表述,描述簡(jiǎn)潔,抓住重點(diǎn),尤其對(duì)修復(fù)的問(wèn)題點(diǎn) 

2、盡量以動(dòng)詞開(kāi)頭,如:更新,增加,修復(fù)等 

3、特別復(fù)雜的功能或流程,可描述參考某文檔,并更新上傳說(shuō)明文檔,

正確的示例:

[release] 發(fā)布V1.0.0_2021 

[fix] 修復(fù)登錄框顯示陰影的問(wèn)題 

[update] 優(yōu)化RFID卡信息讀取的驅(qū)動(dòng)

[test] 添加解碼GNSS測(cè)試功能 

[remove] 刪除多余的提示框界面相關(guān)代碼

錯(cuò)誤的示例:

[fix] 修復(fù)一個(gè)大 BUG       //具體是什么問(wèn)題? 

添加聯(lián)網(wǎng)模塊                  //沒(méi)有 type [add] 

[add] 更新 API 文檔接口說(shuō)明    // type錯(cuò)誤,應(yīng)該是[doc] 

[release] V1.0_20210220   // release必須在第一行

3、工欲善其事必先利其器

工欲善其事必先利其器,工具的熟練掌握、合理利用,修改記錄保存完整,后期檢索跟蹤問(wèn)題,以及多項(xiàng)目軟件切換合并才能簡(jiǎn)單易操作,才能保證代碼的質(zhì)量。

相關(guān)推薦

電子產(chǎn)業(yè)圖譜

嵌入式系統(tǒng)開(kāi)發(fā)技術(shù)交流,軟件開(kāi)發(fā)的思路與方案共享,行業(yè)資訊的分享。