Git 分支管理詳解

來源:互聯網
上載者:User

Git 分支管理詳解

大綱:

1.前言

2.建立分支

3.切換分支

4.合并分支(快速合并)

5.刪除分支

6.分支合并衝突

7.合并分支(普通合并)

8.分支管理原則

9.團隊多人開發協作

10.總結

注,測試機 CentOS 5.5 x86_64,Git 伺服器版本:git version 1.8.2.1,用戶端版本:git version 1.9.2.msysgit.0。所有軟體請到這裡下載:http://msysgit.github.io/。

1.前言

在上一篇部落格中我們主要講解了Git 遠程倉庫,相信大家對遠端Git倉庫有一定的瞭解,嘿嘿。在這一篇部落格中我們來在大家講解一下Git 分支管理,這可以說是Git的又一大特點。下面我們就來學習一下Git分支管理吧。

我們先來說一個簡單的案例吧,你們團隊中有多個人再開發一下項目,一同事再開發一個新的功能,需要一周時間完成,他寫了其中的30%還沒有寫完,如果他提交了這個版本,那麼團隊中的其它人就不能繼續開發了。但是等到他全部寫完再全部提交,大家又看不到他的開發進度,也不能繼續幹活,這如何是好呢?

對於上面的這個問題,我們就可以用分支管理的辦法來解決,一同事開發新功能他可以建立一個屬於他自己的分支,其它同事暫時看不到,繼續在開發分支(一般都有多個分支)上幹活,他在自己的分支上幹活,等他全部開發完成,再一次性的合并到開發分支上,這樣我們既可知道他的開發進度,又不影響大家幹活,是不是很方便呢?

大家可能會說了,你Git的分支功能人家SVN也有啊,也沒什麼特殊的嘛。但我想說你那個建立和切換速度怎麼樣呢?嘿嘿,我想說誰用誰知道啊!但Git呢,無論你建立還是切換或者刪除都很快哦!

分支本質上其實就是一個指向某次提交的可變指標。Git 的預設分支名字為 master 。而我們是怎麼知道當前處於哪個分支當中呢?答案就是在於 HEAD 這個十分特殊的指標,它專門用於指向於本地分支中的當前分支。我們可以簡單理解為:commit <- branch <- HEAD (注,本來我們詳細說一下HEAD的,這個東西真不好說,goole了一下也沒幾個大神說這個,嘿嘿。下面我就通過講解協助大家理解,簡單的說HEAD就是指向於本地分支中的當前分支,如:) 下面我們來建立分支。

GitHub 教程系列文章:

GitHub 使用教程圖文詳解 

Git 標籤管理詳解

Git 分支管理詳解

Git 遠程倉庫詳解

Git 本地倉庫(Repository)詳解

Git 伺服器搭建與用戶端安裝 

Git 概述

2.建立分支

當我們需要調試某個Bug或者嘗試添加或修改程式中的某個模組,而又不能影響主分支的開發時。就可以通過建立分支來滿足需求。建立分支相當於是建立一個新的分支指標指向當前所在的提交。我們在Commit3上建立dev分支:

如所示,dev分支指向Commit3。

從可知,雖然我們建立了一個新分支,但是 HEAD 仍然指向 master 。如果希望在建立分支的同時切換到新分支上,我們可以通過以下命令實現:

git checkout命令加上-b參數表示建立並切換分支上。

 

3.切換分支

切換當前分支我們可以用以下命令實現:

git branch -a 命令可以查看所有分支,現在我們HEAD指標便指向dev分支,大家可以在中看到dev分支上有個*號。

下面我們修改一下readme.txt中的內容,並在dev分支上提交一下。如:

用流程圖示範上述過程如下:

現在我們在dev分支上完成工作,現在到master分支上。如:

流程圖表示如下:

切換回master分支後,再查看一個readme.txt檔案,如:

大家可以看到我們剛才增加的一行內容不見了,嘿嘿。因為那個提交是在dev分支上,而master分支沒有變化。好了,下面我們來示範一下合并分支。

更多詳情見請繼續閱讀下一頁的精彩內容:

  • 1
  • 2
  • 3
  • 4
  • 下一頁

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.