一開始的時候,master
分支是一條線,git用master
指向最新的提交,再用head
指向master
,就能確定當前分支,以及當前分支的提交點。
每次提交,master
分支都會向前移動一步,這樣,隨著你不斷提交,master
分支的線也越來越長。
當我們建立新的分支,例如dev
時,git新建了乙個指標叫dev
,指向master
相同的提交,再把head
指向dev
,就表示當前分支在dev
上
對工作區的修改和提交就是針對dev
分支了,比如新提交一次後,dev
指標往前移動一步,而master
指標不變;
$ git branch dev
$ git checkout dev
switched to branch 'dev'
以上可以簡寫為:$ git checkout -b dev;
git branch
命令檢視當前分支,git branch
命令會列出所有分支,當前分支前面會標乙個*
號
修改內容提交到dev分支上,切換回master
分支($ git checkout master)後,
剛才修改的內容不見了!因為那個提交是在dev
分支上,而master
分支此刻的提交點並沒有變。
現在,我們把dev
分支的工作成果合併到master
分支上:
git merge
命令用於合併指定分支到當前分支,就可以看到,和dev
分支的最新提交是完全一樣的。
另外,合併結束後,可以刪除分支:git branch -d dev
Git建立 合併和刪除分支
在版本回退裡,每次提交,git都把它們串成一條時間線,這條時間線就是乙個分支。截止到目前,只有一條時間線,在git裡,這個分支叫主分支,即master分支。head嚴格來說不是指向提交,而是指向master,master才是指向提交的,所以,head指向的就是當前分支。一開始的時候,master分支...
Git之建立 合併 刪除分支
git中的分支並不是我們所理解的類似於岔路口的那種,其實這裡的分支更多的則是類似於我們所說的平行宇宙。簡單來說就是你在做這件事情的時候完全不影響另一件事情的發展,也就是說,你本人在這個宇宙裡做著這件事,另乙個你在平行宇宙裡做著和你不一樣的另一件事,到了某個時間節點,你發現,兩件事情你都做了。那麼分支...
git分支的建立,合併和刪除
首先,我們建立dev分支,然後切換到dev分支 git checkout b dev switched to a new branch dev git checkout命令加上 b引數表示建立並切換,相當於以下兩條命令 git branch dev git checkout dev switched...