Git的版本和分支管理

2021-07-28 13:47:45 字數 3031 閱讀 2246

[-]

本地的分支管理

遠端的分支管理

本地tag管理

遠端tag管理

結尾及參考

由於已經對git使用比較熟悉了,此篇關於git分支和版本的的管理將不會詳細記錄每乙個細節。如果你還不熟悉git,請先參看:

[1] 

[2] 

[3] 

建立分支,你可以使用

git branch dev
這就建立了乙個dev(development之意),更好的,選擇使用下面的方法建立兩個分支——dev,建立後會自動切換到新建立的分支,

git checkout -b dev
要切回master分支怎麼辦?使用

git checkout master
當然你也可以使用

git checkout dev
再次切換到dev分支。

好了,現在有兩個分支:master和dev了。比如切來切去,突然暫停手下的活要先擼一把,擼完回過頭不知道現在在哪個分支了,怎麼辦?

git branch
搞定,git branch可以檢視當前已有的分支資訊,並在將當前所在分支高亮,當前分支前還有個*號。

某天要除錯某個新演算法,又不能保證能調好,又怕打亂了原有的程式,怎麼辦?建乙個新分支:

git checkout -b debug
在debug分支中慢慢玩,master分支和dev分支毫不受影響。這時就有兩種情況:

git branch -d debug
git checkout master   // 切換到master

git merge debug // 合併debug到master

這時如果你很幸運,直接合併成功。悲傷的事情總是時有發生,「合併發生衝突」是常有的事,因此一旦出現類似下面的提示

conflict (content): merge conflict in ...

automatic merge failed; fix conflicts and then commit the result.

就得自己動手解決衝突了,git會用

<<<<<<>>>>>>debug
這樣的格式提醒你,只要修改保留實際需要的內容後即可解決衝突,解決衝突後就可以執行git commit。

好了,我們合併了master和debug,做it的人總會偷個腥,想看看git是怎麼記錄合併的,沒問題,

git log --graph --pretty=oneline --abbrev-commit
就可以直接看到分支合併的過程。我這有個大點的工程合併效果的例子,

最後,反正debug我玩完了,刪除debug分支

git branch -d debug
我們所有的開發工作都在dev上進行,一旦有了大的突破,則合併到master。

如果不在dev,切換到dev,

git branch

git checkout dev

還記得我們之前推送master分支到遠端origin嗎?

git push -u origin master
推送dev也是一樣的,只要指定分支名為dev就可以了,

git push -u origin dev
git clone [email protected]:....
這是,你用git branch看看,這只是clone了master分支,dev呢?這可是費勁苦心,要在同學a的dev分支上開發,就必須建立遠端的dev分支到本地

git checkout -b dev origin/dev
再用git branch看看?有了吧。

git checkout dev 

git pull origin dev

git pull origin dev
可能出現衝突,解決後才能進行下一次的提交。

極少的場合,要不就是老闆的老婆月經亂了,要不就是。。。哎,不說了,非要刪除遠端dev分支,也是有辦法的,

git push oringin :dev
哇,第乙個里程碑式的突破,有木有,這時你可小小的慶幸一下,打個標籤(tag),表示這是個可靠的可發布版本,

git tag -a v1.0 -m "第乙個里程碑的突破"
當然,注釋別向上面一樣("第乙個里程碑的突破")寫得那麼沒有營養。起個好名字很重要。預設的標籤將打在最新的commit上。

檢視打了哪些標籤使用

git tag
檢視某個標籤的資訊用

git show v1.0
好了,好馬也有失前蹄的時候,標籤打錯也是正常的,

git tag -d v1.0
果斷刪了v1.0標籤。

我想要把v1.0推送到遠端,

git push origin v1.0
把所有的標籤一次推送到遠端更爽,

git push origin --tags
刪除遠端的標籤,你可以到github上刪除,也可以,

git tag -d v1.0
git push origin :refs/tags/v1.0
好了,告一段落了,接著就是使用git策馬奔騰吧!

[1] 廖雪峰git教程

**

Git的版本和分支管理

1 2 3 本地的分支管理 建立分支,你可以使用 git branch dev 這就建立了乙個dev development之意 更好的,選擇使用下面的方法建立兩個分支 dev,建立後會自動切換到新建立的分支,git checkout b dev 要切回master分支怎麼辦?使用 git chec...

Git的版本和分支管理

由於已經對git使用比較熟悉了,此篇關於git分支和版本的的管理將不會詳細記錄每乙個細節。如果你還不熟悉git,請先參看 1 2 3 建立分支,你可以使用 git branch dev這就建立了乙個dev development之意 更好的,選擇使用下面的方法建立兩個分支 dev,建立後會自動切換到...

Git 分支管理和版本控制

git 分支管理 幾乎每一種版本控制系統都以某種形式支援分支。使用分支意味著你可以從開發主線上分離開來,然後在不影響主線的同時繼續工作。建立和切換分支命令git branch 後面不跟引數時,表示檢視當前所有的分支 git branch branchname 建立分支 git checkout br...