10 建立與合併分支

2021-08-17 08:19:53 字數 2164 閱讀 7274

建立與合併分支

在版本回退時,我們已經知道,git提交會把歷史記錄串成一條線,一條時間軸,這個時間軸就叫做分支,只不過這條分支被稱為主分支,我們在版本回退時所指向的head,嚴格來說不是指向提交,而是指向master,master在指向提交,所以,head就是當前分支,git主分支被稱為master

每一次的提交git都會向前走一步,這樣不斷的提交,主分支線會越來越長,當我們建立新的分支,例如dev時,git會指向乙個名叫dev的分支,再把head指向dev,就表示當前分支在dev上了

現在我們所做的所有操作都是在dev的基礎上了,比如,新提交一次資料,時間線就會向後走一格,dev指標往前移動一步,而master指標不變:

假如我們在dev上的工作完成了,就可以把dev合併到master上。git怎麼合併呢?最簡單的方法,就是直接把master指向dev的當前提交,就完成了合併

所以git合併分支也很快!就改改指標,工作區內容也不變!

合併完分支後,甚至可以刪除dev分支。刪除dev分支就是把dev指標給刪掉,刪掉後,我們就剩下了一條master分支:

這樣我們就完成了分支的操作,總的來說就是建立分支 -> 切換分支 -> 分支的提交修改 ->合併分支,大家可能看到這裡知道了大概什麼是分支,但是為什麼要用分支呢,舉個簡單的例子,我們在程式出bug時,可能需要快速解決這個bug,但是有不敢輕易在原有的**上改動,那我們就可以建立出乙個分支來完成,大膽的修復bug,即使分支內容寫的無法修復了,就刪除分支重新建立分支,繼續修復bug之旅,在使用git時,大多數不是主程式業務又不能扔下的事情我們往往建立乙個分支解決問題! 下面我們實際操作一下吧!

首先,我們先建立乙個dev分支,並且切換到dev分支,此處有兩種方式可以實現

第一種:

$ git checkout -b dev

第二種:

$ git branch dev

$ git checkout dev

以上的第一種方式一句話代替了第二種方式的兩句話,所以執行哪個都沒問題,在這裡我使用第一種方式

然後使用 git branch 命令檢視當前都有哪些分支

其中綠色字型顯示並且前面帶有分支的名稱就是當前我們所使用的分支,然後我們就可以在dev分支上做提交操作了,編輯readme.txt文件加上一句話create new git branch然後提交,緊接著切換回master分支,具體操作如下:

切換回master分支後開啟readme.txt,檔案內容不見了,因為你修改提交的是dev分支,當前咱們在master分支

現在,我們把在dev分支的工作成果合併到master分支來

git merge dev 命令代表合併分支的意思,將dev分支內容合併到當前分支(master),合併後在一次開啟readme.txt,發現在dev分支修改提交的內容我們在master分支中也存在了。

合併完成後我們就可以放心的刪除掉dev分支了,刪除後在檢視當前所有分支,就剩下master主分支了

建立與合併分支

在版本回退裡,你已經知道,每次提交,git都把它們串成一條時間線,這條時間線就是乙個分支。截止到目前,只有一條時間線,在git裡,這個分支叫主分支,即master分支。head嚴格來說不是指向提交,而是指向master,master才是指向提交的,所以,head指向的就是當前分支。一開始的時候,ma...

建立與合併分支

在版本回退已經知道每次提交git 就把他們串成一條時間線,這條時間線就是乙個分支。截至到目前為止,只有一條時間線。在git裡這個分支就叫主分支,即master分支,head嚴格來講不止指向提交,而是指向master,master才是指向提交的,所以,head指向的就是當前分支。當我們建立新分支,例如...

Git建立分支與合併分支

首先,我們建立dev分支,然後切換到dev分支 git checkout b dev 建立dev分支並同時切換到dev分支 switched to a new branch dev git checkout命令加上 b引數表示建立並切換,相當於以下兩條命令 git branch dev git ch...