繁体   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