1. git是分布式版本庫管理系統中的乙個主要工具,在這裡,首先明確的是git的地位。
2. git 是如何實現版本庫的管理工作:
(1)git初始化會建立git分支,預設情況下,建立的是主分支,即master,如果沒有在繼續建立工作分支的話,預設開發是在master主分支上進行的,但是這個顯然不是我們要的結果。
git init :建立乙個有master分支的版本庫。
(2)git的工作分支,git上關於工作的分支,稱之為work分支,develop。master和develop的關係中表明,master是提供給使用者的正式版本,每次發布的正式版本都是在master上完成的。develop分支是我們的工作分支,是根據master建立出來的,**是要和master同步的。
在develop上完成的開發之後,要發布正式的版本就把這個位於develop上的**合併到master分支上面。
// 基於主分支建立工作分支:
git checkout - b develop master
// 切換到主分支master
git checkout master
// 合併develop分支到主分支, develop是 --no-ff 引數,表示正常合併
git merge --no-ff develop
3. git 的master、develop分支之外的常用臨時分支:
(1)release :**版本分支,就是在master正式版本發布之前,用於**的,應用在開發人員內部的。這個分支是從develop工作分支上建立的,最後要合併到兩處,分別是 develop,master。
// 基於develop建立release分支
git checkout -b release-1.0 develop
//之後將這個release合併到develop和master分支上
git checkout master
git merge --no-ff release-1.0
// 對合併生成的新節點,做乙個標籤
git tag -a 1.0
develop的合併和master一樣。
// 用完之後將這個分支刪除
git branch -d release-1.0
(2)feature : 功能分支,功能分支是為了完成開發中某項功能的,它是從develop分支上建立出來的,完成功能開發之後合併到develop分支上。在完成功能合併完事後,就把這個feature分支刪掉。
git checkout -b feature-x develop
git checkout develop
git merge --no-ff feature-x
git branch -d feature-x
(3)fixbug分支
顧名思義,是用來修補**中的bug,這個是從master分支中建立出來的,但是也同時要合併到兩個分支上,develop 和master分支上邊。
// 建立分支
git checkout -b fixbug-1.0 master
// 完成修復後合併到主分支
git checkout master
git merge --no-ff fixbug-1.0
// 新增乙個標籤
git tag -a 1.0
同時,也要合併到develop分支
git checkout develop
git merge --no-ff fixbug-1.0
保持分支的整潔,用完這個fixbug之後將這個分支刪除:
git branch -d fixbug-1.0
總結:以上簡單說明了git 主分支和工作分支develop,應該首先理解git 分布式管理的思想,明白了這個分支思想的本質,接下來就是git命令的使用了。
**
Git分支管理策略
如果你嚴肅對待程式設計,就必定會使用 版本管理系統 version control system 眼下最流行的 版本管理系統 非git莫屬。相比同類軟體,git有很多優點。其中很顯著的一點,就是版本的分支 branch 和合併 merge 十分方便。有些傳統的版本管理軟體,分支操作實際上會生成乙份現...
Git分支管理策略
git分支管理策略 作者 阮一峰 如果你嚴肅對待程式設計,就必定會使用 版本管理系統 version control system 眼下最流行的 版本管理系統 非git莫屬。相比同類軟體,git有很多優點。其中很顯著的一點,就是版本的分支 branch 和合併 merge 十分方便。有些傳統的版本管...
Git分支管理策略
如果你嚴肅對待程式設計,就必定會使用 版本管理系統 version control system 眼下最流行的 版本管理系統 非git莫屬。相比同類軟體,git有很多優點。其中很顯著的一點,就是版本的分支 branch 和合併 merge 十分方便。有些傳統的版本管理軟體,分支操作實際上會生成乙份現...