大战熟女丰满人妻av-荡女精品导航-岛国aaaa级午夜福利片-岛国av动作片在线观看-岛国av无码免费无禁网站-岛国大片激情做爰视频

專注Java教育14年 全國咨詢/投訴熱線:400-8080-105
動力節點LOGO圖
始于2009,口口相傳的Java黃埔軍校
首頁 hot資訊 Git合并和合并沖突

Git合并和合并沖突

更新時間:2021-12-23 10:42:05 來源:動力節點 瀏覽2144次

Git 中,合并是連接分叉歷史的過程。它將兩個或多個發展歷史連接在一起。git merge 命令可以幫助您獲取 git branch 創建的數據并將它們集成到單個分支中。Git merge 會將一系列提交關聯到一個統一的歷史記錄中。一般使用 git merge 來合并兩個分支。

“git合并”命令

git merge 命令用于合并分支。

git merge 命令的語法如下:

$ git merge  <查詢>

它可以在各種上下文中使用。一些如下:

場景 1:將指定的提交合并到當前活動的分支:

使用以下命令將指定的提交合并到當前活動的分支。

$ git merge  <提交>  

上面的命令會將指定的提交合并到當前活動的分支。您還可以通過在 中傳入分支名稱來將指定的提交合并到指定的分支。讓我們看看如何提交到當前活動的分支。

請參閱以下示例。我對我的項目文件newfile1.txt進行了一些更改,并將其提交到我的測試分支中。

復制要在活動分支上合并的特定提交并執行合并操作。請參閱以下輸出:

在上面的輸出中,我們已經合并了活動分支 test2 中的先前提交。

場景 2:將提交合并到主分支:

要將指定的提交合并到 master,首先要發現它的提交 id。使用 log 命令查找特定的提交 ID。

$git log  

請參閱以下輸出:

要將提交合并到 master 分支,請切換到 master 分支。

$ git checkout master  

現在,切換到分支“master”以對提交執行合并操作。使用 git merge 命令和 master 分支名稱。其語法如下:

$ git merge master  

請參閱以下輸出:

如上面的輸出所示,提交 ID 為2852e020909dfe705707695fd6d715cd723f9540的提交已合并到主分支中。master 分支中的兩個文件已更改。但是,我們已經在測試分支中進行了此提交。因此,可以合并任何分支中的任何提交。

打開新文件,您會注意到我們提交給測試分支的新行現在被復制到主分支上。

場景 3:Git 合并分支。

Git 允許將整個分支合并到另一個分支中。假設您在一個分支上進行了許多更改,并希望一次合并所有這些更改。Git 允許您這樣做。請參閱以下示例:

在給定的輸出中,我對 test 分支上的 newfile1 進行了更改。現在,我已經在測試分支中提交了這個更改。

現在,切換到要合并的所需分支。在給定的示例中,我已切換到 master 分支。執行以下命令將整個分支合并到活動分支中。

$ git merge <branchname> 

從給定的輸出中可以看出,分支 test2 的整個提交已合并到分支 master。

Git合并沖突

當兩個分支嘗試合并,并且同時在同一個文件中進行編輯時,Git 將無法確定要采用哪個版本進行更改。這種情況稱為合并沖突。如果發生這種情況,它會在合并提交之前停止,以便您可以手動解決沖突。

讓我們通過一個例子來理解它。

假設我的遠程存儲庫已被我的兩個團隊成員user1和user2克隆。user1 在我的項目索引文件中進行了如下更改。

借助 git add 命令在本地存儲庫中更新它。

現在提交更改并使用遠程存儲庫更新它。請參閱以下輸出:

現在,我的遠程存儲庫將如下所示:

它將顯示文件的狀態,例如由誰和何時編輯。

現在,與此同時,user2也更新索引文件如下。

User2 已添加并提交本地存儲庫中的更改。但是當他試圖將它推送到遠程服務器時,它會拋出錯誤。請參閱以下輸出:

在上面的輸出中,服務器知道該文件已經更新并且沒有與其他分支合并。因此,推送請求被遠程服務器拒絕。它會拋出一個錯誤消息,比如[rejected] failed to push some refs to 。它會建議您在推送之前先拉取存儲庫。請參閱以下命令:

在給定的輸出中, git rebase 命令用于從遠程 URL 中拉取存儲庫。在這里,它會在 中顯示類似合并沖突的錯誤消息。

解決沖突:

要解決沖突,需要知道沖突是否發生以及發生的原因。Git合并工具命令用于解決沖突。合并命令的使用如下:

$ git mergetool  

在我的存儲庫中,它將導致:

上面的輸出顯示了沖突文件的狀態。要解決沖突,只需按I 鍵進入插入模式并根據需要進行更改。按Esc 鍵, 退出插入模式。輸入:w! 在編輯器底部保存并退出更改。要接受更改,請使用 rebase 命令。它將按如下方式使用:

$ git rebase --continue  

因此,沖突已經解決。請參閱以下輸出:

在上面的輸出中,沖突已經解決,本地存儲庫與遠程存儲庫同步。如果大家想了解更多相關知識,可以關注一下動力節點的Java在線學習,里面的課程內容全面,從入門到精通,適合零基礎的小伙伴學習,希望對大家能夠有所幫助。

提交申請后,顧問老師會電話與您溝通安排學習

免費課程推薦 >>
技術文檔推薦 >>
主站蜘蛛池模板: 亚洲精品成人7777在线观看 | 91久久香蕉国产线看 | 欧美日韩免费做爰视频 | 日韩欧美在线一级一中文字暮 | 一区在线免费观看 | 在线韩日 | se94se欧美综合色 | 性夜黄a爽爽免费视频国产 性夜影院爽黄a爽免费看网站 | 日本精品一二三区 | 日韩免费高清一级毛片在线 | 欧美日韩中文字幕在线手机版本 | 天天摸天天操天天爽 | 欧美xxx视频 | 热99re久久国超精品首页 | 国精品在亚洲_欧美 | 老子影院午夜伦不卡 | 欧美成人精品欧美一级乱黄 | 亚洲国产精品免费在线观看 | a毛片免费全部在线播放毛 a毛片免费在线观看 | 欧美日韩中文国产一区二区三区 | 奇米影视奇米四色888av | 国产精欧美一区二区三区 | 欧美性影院 | 日韩精品一区二区三区乱码 | 天天做人人爱夜夜爽2020 | 天天舔天天操天天干 | a毛片成人免费全部播放 | 亚洲 欧美 另类 天天更新影院 | 国产精品不卡视频 | 色费女人18毛片a级视频在线 | 久久久免费观成人影院 | 日本精品久久久久中文字幕2 | 狠狠五月婷婷 | 色久综合 | 国产成人综合高清在线观看 | 欧美成人伊人十综合色 | 2018久久久国产精品 | 国产福利视频奶水在线 | 女孕学护士一级毛片 | 天天干天天干天天操 | 免费精品一区二区三区在线观看 |