小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

簡單對比git pull和git pull

 liang1234_ 2019-02-25

使用下面的關(guān)系區(qū)別這兩個操作:
git pull = git fetch + git merge
git pull --rebase = git fetch + git rebase

現(xiàn)在來看看git merge和git rebase的區(qū)別。

假設(shè)有3次提交A,B,C。

在遠程分支origin的基礎(chǔ)上創(chuàng)建一個名為"mywork"的分支并提交了,同時有其他人在"origin"上做了一些修改并提交了。

其實這個時候E不應(yīng)該提交,因為提交后會發(fā)生沖突。如何解決這些沖突呢?有以下兩種方法:

1、git merge
用git pull命令把"origin"分支上的修改pull下來與本地提交合并(merge)成版本M,但這樣會形成圖中的菱形,讓人很困惑。

2、git rebase
創(chuàng)建一個新的提交R,R的文件內(nèi)容和上面M的一樣,但我們將E提交廢除,當它不存在(圖中用虛線表示)。由于這種刪除,小李不應(yīng)該push其他的repository.rebase的好處是避免了菱形的產(chǎn)生,保持提交曲線為直線,讓大家易于理解。

在rebase的過程中,有時也會有conflict,這時Git會停止rebase并讓用戶去解決沖突,解決完沖突后,用git add命令去更新這些內(nèi)容,然后不用執(zhí)行g(shù)it-commit,直接執(zhí)行g(shù)it rebase --continue,這樣git會繼續(xù)apply余下的補丁。
在任何時候,都可以用git rebase --abort參數(shù)來終止rebase的行動,并且mywork分支會回到rebase開始前的狀態(tài)。

    本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點。請注意甄別內(nèi)容中的聯(lián)系方式、誘導購買等信息,謹防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊一鍵舉報。
    轉(zhuǎn)藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多