簡體   English   中英

如何將更改從一個遠程分支轉移到另一個遠程分支

[英]How to take changes from one remote branch to other remote branch

我正在做一個項目,我從release_branch中剪下一個分支,讓我們稱我的分支為 branch_A 我的同事還從同一個發布分支中刪除了另一個分支,我們稱之為branch_B 我們正在處理相同的文件和部分,因此為了避免任何合並沖突,我想將更改從branch_B更改為我的branch_A branch_B的更改已經合並到我們之前從中刪除分支的release_branch中。

有人可以告訴我該怎么辦嗎? 我試過拉,但沒有用。 我也切換到release_branch並進行了拉取,並且那里有更改但是一旦我切換到我的branch_A更改就消失了。 請幫忙。

首先,確保您將所有更改提交到您的branch_A並且如果您擔心在此過程中丟失您的工作,請在branch_A創建一個新分支(例如branch_A_old )。

由於您最終將合並回release_branch ,因此您可以使用以下方法之一:

  1. 檢查branch_A ,如果尚未檢查,則使用git pull --no-rebase remote_name/release_branchremote_name/release_branch拉入branch_A 這將創建一個合並提交,合並最新的release_branch ,包括branch_B所做的更改到您的分支中。 如果有任何沖突,您將必須解決它們並執行提交以完成合並。
  2. branch_A ,獲取remote_name/release_branch ,然后將remote_name/release_branch合並到branch_A中。 這與方法 1 基本相同,但分為兩個步驟。
  3. branch_A ,獲取remote_name/release_branch ,然后使用branch_A remote_name/release_branch作為上游分支對 branch_A 進行變基。 或者,您可以使用 use git pull --rebase remote_name/release_branch將獲取和變基合並為一個步驟。

方法 1 和 2 會將合並保留為歷史的一部分,方法 3 將更新分支中的所有提交,以便您的分支從release_branch的最新提交開始。

方法 1 和 2 通常更容易,盡管這是有爭議的,但方法 3 將提供更清晰的歷史記錄。 如果您確實使用了方法 1 或 2,您以后總是可以執行壓縮以清理歷史記錄。

暫無
暫無

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

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