九色国产,午夜在线视频,新黄色网址,九九色综合,天天做夜夜做久久做狠狠,天天躁夜夜躁狠狠躁2021a,久久不卡一区二区三区

打開(kāi)APP
userphoto
未登錄

開(kāi)通VIP,暢享免費(fèi)電子書(shū)等14項(xiàng)超值服

開(kāi)通VIP
Git的版本和分支管理

 由于已經(jīng)對(duì)Git使用比較熟悉了,此篇關(guān)于git分支和版本的的管理將不會(huì)詳細(xì)記錄每一個(gè)細(xì)節(jié)。如果你還不熟悉git,請(qǐng)先參看:

[1] http://blog.csdn.net/xiahouzuoxin/article/details/9393119

[2] http://blog.csdn.net/xiahouzuoxin/article/details/9398629

[3] http://blog.csdn.net/xiahouzuoxin/article/details/18076043

本地的分支管理

創(chuàng)建分支,你可以使用

git branch dev

這就創(chuàng)建了一個(gè)dev(development之意),更好的,選擇使用下面的方法創(chuàng)建兩個(gè)分支——dev,創(chuàng)建后會(huì)自動(dòng)切換到新創(chuàng)建的分支,

git checkout -b dev

要切回master分支怎么辦?使用

git checkout master

當(dāng)然你也可以使用

git checkout dev 

再次切換到dev分支。

好了,現(xiàn)在有兩個(gè)分支:master和dev了。比如切來(lái)切去,突然暫停手下的活要先擼一把,擼完回過(guò)頭不知道現(xiàn)在在哪個(gè)分支了,怎么辦?

git branch

搞定,git branch可以查看當(dāng)前已有的分支信息,并在將當(dāng)前所在分支高亮,當(dāng)前分支前還有個(gè)*號(hào)。

某天要調(diào)試某個(gè)新算法,又不能保證能調(diào)好,又怕打亂了原有的程序,怎么辦?建一個(gè)新分支:

git checkout -b debug

在debug分支中慢慢玩,master分支和dev分支毫不受影響。這時(shí)就有兩種情況:

  • 悲劇的最后還是沒(méi)調(diào)出來(lái),我又有強(qiáng)迫癥,debug分支一直放在那總是不爽,刪了
git branch -d debug
  • 恭喜,算法調(diào)試成功,我要合并到master中
git checkout master   // 切換到mastergit merge debug       // 合并debug到master 

這時(shí)如果你很幸運(yùn),直接合并成功。悲傷的事情總是時(shí)有發(fā)生,“合并發(fā)生沖突”是常有的事,因此一旦出現(xiàn)類似下面的提示

CONFLICT (content): Merge conflict in ...Automatic merge failed; fix conflicts and then commit the result.

就得自己動(dòng)手解決沖突了,git會(huì)用

<<<<<<<HEAD master原有的內(nèi)容======= debug分支中沖突的內(nèi)容>>>>>>>debug

這樣的格式提醒你,只要修改保留實(shí)際需要的內(nèi)容后即可解決沖突,解決沖突后就可以執(zhí)行g(shù)it commit。

好了,我們合并了master和debug,做IT的人總會(huì)偷個(gè)腥,想看看git是怎么記錄合并的,沒(méi)問(wèn)題,

git log --graph --pretty=oneline --abbrev-commit

就可以直接看到分支合并的過(guò)程。我這有個(gè)大點(diǎn)的工程合并效果的例子,

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

git branch -d debug

遠(yuǎn)程的分支管理

我們所有的開(kāi)發(fā)工作都在dev上進(jìn)行,一旦有了大的突破,則合并到master。

  • 既然有了dev分支,我也要把它推送到github上

如果不在dev,切換到dev,

git branchgit checkout dev 

還記得我們之前推送master分支到遠(yuǎn)程origin嗎?

git push -u origin master

推送dev也是一樣的,只要指定分支名為dev就可以了,

git push -u origin dev 
  • 同學(xué)A開(kāi)頭寫(xiě)了個(gè)項(xiàng)目,老板讓我也跟著做,同學(xué)A說(shuō),你到github上圖clone我的代碼吧
git clone git@github.com:....

這是,你用git branch看看,這只是clone了master分支,dev呢?這可是費(fèi)勁苦心,要在同學(xué)A的dev分支上開(kāi)發(fā),就必須創(chuàng)建遠(yuǎn)程的dev分支到本地

git checkout -b dev origin/dev 

再用git branch看看?有了吧。

  • 在同學(xué)A的基礎(chǔ)上我又添了新功能,老板催著,趕緊提交
git checkout dev git pull origin dev 
  • 老板某天突然和我說(shuō):你看同學(xué)A,又修改了好多Bug,還不下下來(lái)學(xué)學(xué)
git pull origin dev  

可能出現(xiàn)沖突,解決后才能進(jìn)行下一次的提交。

極少的場(chǎng)合,要不就是老板的老婆月經(jīng)亂了,要不就是。。。哎,不說(shuō)了,非要?jiǎng)h除遠(yuǎn)程dev分支,也是有辦法的,

git push oringin :dev 

本地Tag管理

哇,第一個(gè)里程碑式的突破,有木有,這時(shí)你可小小的慶幸一下,打個(gè)標(biāo)簽(Tag),表示這是個(gè)可靠的可發(fā)布版本,

git tag -a v1.0 -m "第一個(gè)里程碑的突破"

當(dāng)然,注釋別向上面一樣("第一個(gè)里程碑的突破")寫(xiě)得那么沒(méi)有營(yíng)養(yǎng)。起個(gè)好名字很重要。默認(rèn)的標(biāo)簽將打在最新的commit上。

查看打了哪些標(biāo)簽使用

git tag 

查看某個(gè)標(biāo)簽的信息用

git show v1.0

好了,好馬也有失前蹄的時(shí)候,標(biāo)簽打錯(cuò)也是正常的,

git tag -d v1.0

果斷刪了v1.0標(biāo)簽。

遠(yuǎn)程Tag管理

我想要把v1.0推送到遠(yuǎn)程,

git push origin v1.0

把所有的標(biāo)簽一次推送到遠(yuǎn)程更爽,

git push origin --tags

刪除遠(yuǎn)程的標(biāo)簽,你可以到github上刪除,也可以,

  • 先刪除本地的
git tag -d v1.0
  • 刪除遠(yuǎn)程的
git push origin :refs/tags/v1.0

結(jié)尾及參考

好了,告一段落了,接著就是使用git策馬奔騰吧!

[1] 廖雪峰Git教程

本站僅提供存儲(chǔ)服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊舉報(bào)。
打開(kāi)APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
【Git基本命令】
git 把遠(yuǎn)程分支拿到本地,并建立關(guān)聯(lián)關(guān)系track
github 分支管理
git merge合并分支
Git 常用命令總結(jié),掌握這些,輕松駕馭版本管理
Git創(chuàng)建與管理遠(yuǎn)程分支
更多類似文章 >>
生活服務(wù)
熱點(diǎn)新聞
分享 收藏 導(dǎo)長(zhǎng)圖 關(guān)注 下載文章
綁定賬號(hào)成功
后續(xù)可登錄賬號(hào)暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服