最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

詳解Git?的?rebase?命令使用方法

 更新時間:2022年05月12日 15:15:56   作者:CG國斌  
這篇文章主要介紹了Git?的?rebase?命令使用方法,接下來,我們使用rebase命令,其命令一般形式為git?rebase?feature,即表示在?master?分支上執(zhí)行rebase命令,將?feature?分支的代碼合并到?master?分支,本文給大家介紹的非常詳細,需要的朋友可以參考下

在基于 Git 的開發(fā)過程中,我們很容易遇到合并代碼的情況,例如我們從 master 分支拉取了一個 feature 分支,當我們開發(fā)到一段時間之后,可能需要將 master 的代碼合并到我們當前的 feature 分支之中。

這時,我們有兩個選擇,一個是使用git merge命令,一個是使用git rebase命令,這兩個命令都是用來合并代碼的,但卻有一些差異。在本文中,我們主要講述git rebase命令的使用方法,也會簡單介紹這兩個命令的差異。

fork_master

如上圖所示,我們從 master 分支拉取了一個名為 feature 的分支,并且在拉取新分支之后,有過三次提交記錄;同時,master 分支在我們拉取 feature 分支之后,也有過兩次提交記錄?,F(xiàn)在我們已經(jīng)構(gòu)造了背景,接下來我們合并代碼。

merge_master

首次,我們使用merge命令,其命令形式一般為git merge --no-ff master,即表示將 master 的代碼合并到 feature 分支,其中--no-ff參數(shù)是為了保留 master 分支的提交記錄。如上圖所示,在使用merge命令進行代碼合并之后,Git 會自動創(chuàng)建一個新的 commit 用來表示當前的合并操作,此 commit 記錄了 master 代碼合并到 feature 分支時產(chǎn)生的所有改動。

rebase_master

接下來,我們使用rebase命令,其命令一般形式為git rebase feature,即表示在 master 分支上執(zhí)行rebase命令,將 feature 分支的代碼合并到 master 分支。如上圖所示,在使用rebase命令之后,Git 會合并兩個分支的 commit 記錄,其規(guī)則為「在基準分支上合并目標分支的代碼,會將目標分支的提交記錄全部前置到基準分支的最新提交記錄之前」,就如上面這樣,我們在 master 分支上使用了rebase命令之后,Git 將 feature 分支上面的所有 commit 記錄都前置到了 master 分支的最新 commit 記錄之前。

在這里,需要注意的是:rebase是以 commit 為維度的,按 commit 提交的順序依次進行合并操作;如果在合并的過程中,某個 commit 遇到了沖突,則需要我們先解決該沖突,然后才能繼續(xù)進行合并操作。特別地,在我們解決沖突之后,需要使用git add + 沖突文件命令將當前沖突標記為已解決,然后使用git rebase --continue命令繼續(xù)合并操作。

通過上面的描述,我們能發(fā)現(xiàn)mergerebase有一個很明顯的差異,那就是當遇到?jīng)_突的時候,使用merge命令,我們只需要解決一次沖突即可;使用rebase命令,我們則需要依次解決每一個沖突。

對于 Git 的rebase命令,其除了能進行代碼合并之外,還有一個常用的功能,那就是將多個 commit 合并為一個,仍然以上面的 feature 分支為例,我們將其從 master 分支拉取之后,進行了三次提交,現(xiàn)在我們將這三個提交結(jié)論合并為一個,其命令一般形式為:

git rebase -i HEAD~N

其中,N為我們需要合并的 commit 記錄的數(shù)量,因為示例中是三次提交記錄,所以在此場景下,將N替換為3即可。

在執(zhí)行完上面的命令之后,我們會進入vi或者vim文件編輯器:

rebase_test

如上圖所示,pick標識了我們的三次提交記錄,按i建進入編輯模式,保留第一個pick,然后將后面兩個pick修改為s或者f,然后鍵入:wq保留修改。最后,為了將變更同步到遠程分支,我們需要使用git push -f命令,其中參數(shù)-f表示強制提交。

到此這篇關于Git 的 rebase 命令使用方法的文章就介紹到這了,更多相關git rebase 命令內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • 遵守這些原則讓你開發(fā)效率提高一倍(收藏)

    遵守這些原則讓你開發(fā)效率提高一倍(收藏)

    這篇文章主要介紹了遵守這些原則讓你開發(fā)效率提高一倍,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-07-07
  • vscode如何安裝漢化和Python智能感知

    vscode如何安裝漢化和Python智能感知

    VSCode(VisualStudioCode)是由微軟研發(fā)的一款免費、開源的跨平臺文本(代碼)編輯器,算是目前前端開發(fā)幾乎完美的軟件開發(fā)工具。今天我們來看看它如何使用呢
    2020-01-01
  • 分享10個程序員常用的的代碼文本編輯器

    分享10個程序員常用的的代碼文本編輯器

    通常操作系統(tǒng)和軟件開發(fā)包中都包含文本編輯器,可以用來編輯配置文件,文檔文件和源代碼,這里分享一下程序員常用的代碼編輯器,需要的朋友可以參考下
    2016-09-09
  • git-pycharm配置.ignore文件的詳細過程

    git-pycharm配置.ignore文件的詳細過程

    在開發(fā)中經(jīng)常需要配置提交git的忽略文件,本篇來學習下使用pycharm自動生成.ignore文件,感興趣的朋友跟隨小編一起看看吧
    2023-06-06
  • VsCode配置ssh免密遠程連接服務器的實現(xiàn)步驟

    VsCode配置ssh免密遠程連接服務器的實現(xiàn)步驟

    現(xiàn)在,可以在VSCode中直接通過SSH連接到服務器,而無需每次輸入密碼,本文主要介紹了VsCode配置ssh免密遠程連接服務器的實現(xiàn)步驟,文中通過示例代碼介紹的非常詳細,需要的朋友們下面隨著小編來一起學習學習吧
    2023-08-08
  • IDEA中配置Git的Push鍵

    IDEA中配置Git的Push鍵

    在學習git的過程中,當然需要將本地倉庫的資源push到遠程倉庫中,但在idea中使用git是發(fā)現(xiàn)沒有push這個按鈕,本文主要介紹了IDEA中配置Git的Push鍵,感興趣的可以了解一下
    2023-12-12
  • IDEA+Git+Gitlab使用詳細教程

    IDEA+Git+Gitlab使用詳細教程

    這篇文章主要介紹了IDEA+Git+Gitlab使用詳細教程,本文通過圖文實例相結(jié)合給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-11-11
  • 關于使用mvn deploy命令將本地jar包上傳到maven私服的問題(收藏)

    關于使用mvn deploy命令將本地jar包上傳到maven私服的問題(收藏)

    這篇文章主要介紹了使用mvn deploy命令將本地jar包上傳到maven私服,分享本篇教程可以幫助多數(shù)朋友少走彎路,本文具有很好的收藏價值,需要的朋友可以參考下
    2022-03-03
  • 高效管理http連接的方法

    高效管理http連接的方法

    下面小編就為大家分享一篇高效管理http連接的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2017-12-12
  • vscode配置遠程開發(fā)與免密登錄的技巧

    vscode配置遠程開發(fā)與免密登錄的技巧

    這篇文章主要介紹了vscode配置遠程開發(fā)與免密登錄的技巧,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-04-04

最新評論

禄劝| 达州市| 兴山县| 舟山市| 广州市| 永福县| 鞍山市| 滦南县| 屏东市| 昌都县| 岐山县| 台南县| 台安县| 阿瓦提县| 保定市| 敖汉旗| 沙坪坝区| 新安县| 南昌县| 平罗县| 周至县| 赣榆县| 扶风县| 江阴市| 独山县| 依兰县| 建水县| 台前县| 德钦县| 河曲县| 石城县| 堆龙德庆县| 商河县| 吉首市| 铜川市| 廊坊市| 乌兰浩特市| 象州县| 东宁县| 青田县| 靖安县|