<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12

      Git Commit 標準化

       

       

      1 前言
      Git Commit Message 應該清晰明了,要用精簡的語言說明本次提交的目的,其主要作用是為
      了后續的搜索、版本的回滾、合并沖突的追溯等操作。 

      我們在開發時一直以來對 Git Commit 格式有個約定俗稱的要求,所以就沒落實明確的規范。
      因為沒有明確的規范,就會導致提交的消息較為隨意。甚至出現「“.”、”Update”」這樣的消息。

      直到我在 GitHub 上發現了這條 Commits 時,才意識到提交信息也該規范起來。 

      以下圖舉例,當代碼出現 Bug 時,應該回滾到哪個版本?
      回滾到 “朕與將軍解戰袍,芙蓉暖帳度春宵” 嗎?
      這條記錄所變更的內容是啥,看概要我一概不知。 ︿( ̄︶ ̄)︿


      為了解決規范問題,我參考了一些的開源項目,當發現 commitizen 庫時,才知道好多大型開
      源(AngularJSVueJS)項目早已使用了它。所以在接下來我會介紹一下 commitizen 工具所
      使用 Google AngularJS 規范。


      2 規范介紹
      這次主要介紹 AngularJS 的規范,它是由 Google 推出的一套提交消息規范標準,也是目前使
      用范圍最廣的規范。有一套合理的手冊也較為系統化;并且還有配套的工具可以供我們使用。

      說白了,規范就是用工具進行強約束。單看規范比較簡單,所以先讓大家先看看面,知道他的
      大體規則后,在來講細節。

      規范執行方案如下:  


      既然有了方案,就會按照某些規則執行,以下是 Google AnguarJS 規范的要求:

      規范目標
      - 允許通過腳本生成 CHANGELOG.md
      - 可以通過范圍的關鍵詞,快速的搜索到指定版本

      git log HEAD --grep feat(package.json) # 在package.json文件里新增的特性。 

      格式要求

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

      - 消息只占用一行,任何行都不能超過 100 個字符
      - 允許使用 GitHub 以及各種 Git 工具閱讀消息
      - 提交消息由頁眉、正文和頁腳組成,由空行分隔

      <type>
      代表某次提交的類型,比如是修復一個 bug 或是增加一個 feature,類型如下:
      類型 描述


      <scope>
      范圍可以是指定提交更改位置的任何內容,如:
      - 對 package.json 文件新增依賴庫,chore(package.json): 新增依賴庫
      - 或對代碼進行重構,refacto(weChat.vue): 重構微信進件

      <subject>
      如果沒有更合適的范圍,可以直接寫提交內容

       

      Commit 實戰
      提交一條依賴庫變更,type 為 chore(增加依賴庫);等提交完成后,使用 Git 工具進行搜索。
      此時搜索類型是 chore(package.json),所以就能知道 package.json 文件所有的歷史變更。

      # 新增一條 Commit 記錄
      git commit -m 'chore(package.json): 新增 AngularJS 規范,Commit 時會自動調用鉤子(GitHook)來判斷 Message 是否有效'
      
      # 搜索跟 package.json 文件相關的歷史記錄
      git log HEAD --grep chore(package.json)


      3 工具介紹
      因為是 Google AngularJS 的標準規范,所以提供了多種工具。如生成 CHANGELOG.md,提
      交工具,檢查工具。

      工具列表:
      1. 提交工具 commitizen,如果是初學者,可以使用 commitizen 幫助我們生成消息
      2. 生成 CHANGELOG.md,把 Git Commit Message 的消息自動生成 CHANGELOG.md
      3. Message 檢查,是否有 “不符合” 規范的內容,可以在 GitHook 中使用

      提交以及檢查工具相對來說簡單,大家自學即可,所以我以生成 CHANGELOG.md 舉例

      # 安裝 CHANGELOG 生成器
      yarn global add standard-version
      
      # 生成文檔
      standard-version --first-release

      文檔生成后,當前目錄下就有 CHANGELOG.md 文件了,如果是 Node 項目,也會自動更新
      package.json version 的版本號

      這是根據 Git Commit Message 歷史記錄所生成的 CHANGELOG.md,在也不用手寫了。( ̄▽ ̄)"

       

      4 參考鏈接
      commitizen
      https://github.com/commitizen/cz-cli
      https://github.com/conventional-changelog/conventional-changelog
      https://github.com/marionebl/commitlint

      中文規范
      https://github.com/feflow/git-commit-style-guide

      AngularJS 規范
      https://docs.google.com/document/d/1QrDFcIiPjSLDn3EL15IJygNPiHORgU1_OOAqWjiDU5Y/edit#heading=h.greljkmo14y0
      https://github.com/angular/angular.js/blob/master/CONTRIBUTING.md#toc10

      posted @ 2019-01-23 10:57  吳佰清  閱讀(18927)  評論(2)    收藏  舉報
      主站蜘蛛池模板: 国产精品综合色区av| 亚洲精品国产无套在线观| 你懂的一区二区福利视频| 大香伊蕉在人线国产免费| 亚洲精品~无码抽插| 国产在热线精品视频99公交 | 亚洲av成人精品日韩一区| 亚洲精品揄拍自拍首页一| 亚洲精品免费一二三区| 成人看的污污超级黄网站免费| 亚洲欧美日产综合在线网| 精品人妻中文无码av在线| 人妻影音先锋啪啪av资源| 国产超高清麻豆精品传媒麻豆精品| 国产成人精品2021欧美日韩| 欧美人成精品网站播放| 亚洲精品在线视频自拍| 男人j进入女人j内部免费网站| 久久99国产精品尤物| 亚洲男人天堂2018| 亚洲伊人五月丁香激情| 无码人妻视频一区二区三区| 日本不卡一区二区三区在线| 亚洲高潮喷水无码AV电影| 久久久www成人免费精品| 日韩精品人妻黄色一级片| 国产第一页浮力影院入口| 国产三级a三级三级| 最新国产AV最新国产在钱| 26uuu另类亚洲欧美日本| 成人毛片一区二区| 高清无打码一区二区三区| 国产gaysexchina男外卖| 日本va欧美va精品发布| 亚洲av色一区二区三区| 国产情侣激情在线对白| 精品av无码国产一区二区| 国产区精品视频自产自拍| 极品尤物被啪到呻吟喷水| 人人妻人人妻人人片av| 国产内射xxxxx在线|