簡體   English   中英

Git 從不同的分支合並恢復代碼

[英]Git merge from a different branch reverts code

我添加了一張圖片來描述我們的 git 提交的流程。 基本上,兩個用戶簽出一個開發分支。 然后他們創建自己的功能分支並對一個文件進行更改(文件的不同部分,因此沒有沖突)。 第一個用戶更改文件並提前合並到開發分支。 后來,一直在處理文件的早期副本的第二個用戶進行了新的更改,並合並以進行開發。 來自第二個用戶的合並不會發生沖突,但會還原第一個用戶所做的更改。 我們如何防止這種情況發生? 在審查沒有任何合並沖突的拉取請求時,有時會遺漏一些小細節。

在此處輸入圖像描述

請讓第二個用戶在合並之前從開發中提取更改。

git pull --rebase

嘗試做一個 rebase 並修復可能出現的沖突:

git rebase origin/BRANCH

然后,如果存在沖突,請先嘗試修復它。

這將確保他們的更改首先到達您,並且您可以在提交/推送之前處理它們。 最好是變基,這樣您所做的更改仍在提交中。

這是以下解決方案:兩個用戶和兩個功能分支

1.第一個用戶合並 featureBranch1 的更改以開發 2.第二個用戶在 featureBranch2 中進行更改,但第二個用戶必須執行以下步驟才能在合並后將第一個用戶所做的更改合並到開發分支

git rebase development (這將整個 featureBranch2 移動到開發分支的頂端,有效地將所有新提交合並到開發中)

很抱歉延遲回復。 該解決方案比使用變基更容易。 第二個用戶必須簡單地調用git pull origin development ,同時在合並拉取請求之前留在他們的功能分支。 如果拉取時發生沖突,用戶必須解決沖突並推送到他們的分支。 然后審查者應該再次審查拉取請求並批准。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM