日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

git 移动分支指针_图解4种git合并分支方法

發(fā)布時間:2025/10/17 编程问答 23 豆豆
生活随笔 收集整理的這篇文章主要介紹了 git 移动分支指针_图解4种git合并分支方法 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

有時候我們會后悔,有時候我們會想回到過去,有時候我們想改變歷史,然而在我們這個世界,目前來看是無法回到過去改變歷史的

但在git的世界里,一切皆有可能,我們可以在多維空間里任意切換,隨意改變一個宇宙的時間線,只要我們愿意,git的分支就是這么神奇

然而很多時候你以為你改變了歷史,不為人知,那個宇宙并沒有消失,而是遺失在了git的世界里,有能力的人便能找到

彼此分開的世界也能隨時交叉合并,世界就這樣開開合合,偶會需要解決合并沖突

git中的分支非常的輕量,其實就是一個文件,里面記錄了分支所指向的commit id,下圖中有兩個分支分別是master和test,他們都指向了A2這個提交,HEAD是一個特殊的指針,他永遠指向你當前所在的位置;有時候你可能不在某一個分支上,不要驚慌,你隨時有權(quán)利去你想去的分支,git賦予了你新建,切換分支的能力

然后有時候世界并不總?cè)缟蠄D那般美好,面對分叉的兩個分支,git新手總是一臉茫然,本文我將講述git中合并分支的方法

在git中合并分支有三種方法,分別是merge,rebase,cherry-pick,而其中merge又有三種區(qū)別,下面將一一介紹

fast-forward

如果待合并的分支在當前分支的下游,也就是說沒有分叉時,會發(fā)生快速合并,從test分支切換到master分支,然后合并test分支

git checkout master

git merge test

這種方法相當于直接把master分支移動到test分支所在的地方,并移動HEAD指針

no-ff

如果我們不想要快速合并,那么我們可以強制指定為非快速合并,只需加上--no-ff參數(shù)

git checkout master

git merge –no-ff test

這種合并方法會在master分支上新建一個提交節(jié)點,從而完成合并

squash

svn的在合并分支時采用的就是這種方式,squash會在當前分支新建一個提交節(jié)點

squash和no-ff非常類似,區(qū)別只有一點不會保留對合入分支的引用

git checkout master

git merge –squash test

rebase

當要合并兩個分叉的分支時,merge的方式是將待合入分支和當前分支不同的部分,在當前分支新建節(jié)點,如下圖所示

rebase與merge不同,rebase會將合入分支上超前的節(jié)點在待合入分支上重新提交一遍,如下圖,B1 B2會變?yōu)锽1' B2',看起來會變成線性歷史

cherry-pick

這命令簡直就是神器,給你自由,你想把那個節(jié)點merge過來就把那個節(jié)點merge過來,其合入的不是分支而是提交節(jié)點

總結(jié)

只有知道了這些合并方式的區(qū)別,才能git在手,天下我有,任你分支在凌亂,我自巋然不動

繼續(xù)學習

歡迎訂閱我的微信公眾帳號,只推送原創(chuàng)文字。掃碼或搜索:顏海鏡

總結(jié)

以上是生活随笔為你收集整理的git 移动分支指针_图解4种git合并分支方法的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。