版本管理

git-book: https://git-scm.com/book/zh/v2git

項目分支流程管理規範: https://www.jianshu.com/p/217d2b3bc96d     <- I should click it!測試

 

我關注的點:指針

分支:一條時間線,一條執行線,每次修改都會在分支上留下一個「疙瘩」,就像毛線同樣。blog

分支命名:主要是一個團隊商量,你們達成約定,規範,方便理解其用途。
               好比feature-xxx, develop, release, master, fixbug-xxx
               團隊在使用時,嚴格按照分支用途規範本身的行爲,每一個分支應該如何用,具備什麼操做限制。生命週期

分支生命週期:分支分爲本地分支與倉庫分支,前者的生命週期視其建立目的決定,後者是與項目」同生共死「的。
               舉個例子:
                    master: 生產環境的穩定版本分支,用於線上發佈,僅能從release分支/fixbug-xxx分支合併,不容許在該分支提交修改。
                    release: 測試分支,測試過程當中發現bug,能夠直接在該分支上修改,
                                測試經過後,方可將其合併到master分支,同時須要合併到develop分支。
                   develop: 開發環境的穩定分支,是公共開發環境的rootNode。
                   feature-xxx: 功能分支,基於develop分支建立而來,開發人員自測功能完畢後,可將其合併回develop。
                   fixbug-xxx: 緊急修復分支,基於master分支建立而來,測試經過後方可合併回master,
                                   也須要將其合併到develop分支。開發

合併: 如何規範的合併分支?
      1.產生有效的合併結果;
      2.合併記錄具有可讀性;
      3.合併過程出現衝突,留下解決記錄;get

 

變基: https://git-scm.com/book/zh/v2/Git-%E5%88%86%E6%94%AF-%E5%8F%98%E5%9F%BAit

        描述: 變基是將from分支上的一系列操做「剪切」到to分支,就好像操做一開始就是基於to分支進行的。
        做用: 使得提交記錄變得整潔,是一條直線,沒有分叉ast

遴選: 將某個分支上的commit提交到另外一個分支上。class

回滾: 將HEAD頭指針指向以前的某個commit,若是須要保存,還要再次提交(push)一次。

標籤: 分爲簡單標籤和詳細標籤,後者包含的信息會比前者更多,按需選擇,我選擇詳細標籤。
        做用: 給某個commit打上標記,方便往後追溯、查找————一般拿來做爲版本標示。
        對標籤常見的操做: 建立
                                  普通查看,統配模式查看
                                  刪除
                                  推送至遠程倉庫
                                  檢出某個標籤,查看相關內容

緊急修復: 基於穩定版本分支新建一個分支,而後進行bug修復,待測試經過,即可以將其合併回穩定版本分支。
             屬於臨時舉措,在其職責結束以後,其分支的生命週期也同時結束。

commit規範: 要求能清晰的描述本次commit的類型爲什麼(好比提交功能/修復bugX),及其內容。

 

------------------------------------------------------------------------------------------------

------------------------------------------------------------------------------------------------

git經常使用命令速查表:

 

 

 ------------------------------------------------------------------------------------------------

------------------------------------------------------------------------------------------------

git版本回退:

 

 

------------------------------------------------------------------------------------------------

建立遠程分支:

 

 

------------------------------------------------------------------------------------------------

------------------------------------------------------------------------------------------------

git_reset_hard推送後找回文件方法

 

 

------------------------------------------------------------------------------------------------

------------------------------------------------------------------------------------------------

git_cherry-pick

相關文章
相關標籤/搜索