gpt4 book ai didi

eclipse - 如何在分支之间正确合并,从不同版本的主干分支?

转载 作者:行者123 更新时间:2023-12-02 10:24:06 26 4
gpt4 key购买 nike

我们的团队使用 Eclipse 来开发软件产品,最近我们改用 Subversion 来进行源代码控制/版本管理。起初,我们的团队仍然直接致力于主干,因为我们对 Subversion 的源代码控制方式还很陌生,而且事情仍然需要拖延。

在某个时候,我从主干创建了第一个真正的分支,为我们产品中的特定项目进行开发。假设该分支名为 DEV_PROJ。

后来,随着我们的团队更好地了解如何使用 Eclipse 中的 Subversion,我将团队置于我们的第一个真正的开发分支上,不是针对特定的子项目,而是跟踪不同的版本。假设该分支名为 DEV_VERS。现在我们正在该分支上工作,不再直接提交到主干。 DEV_VERS 是从最新版本的主干分支出来的,从那时起就没有对主干的任何提交。

在两个分支之间大约过去了两三个月,在我创建版本分支之前,主干发生了很多变化。现在是时候将 DEV_PROJ 的更改合并到 DEV_VERS 分支,以将该项目合并到我们的新版本分支中。

我首先做的是将主干的最新版本合并到我的 DEV_PROJ 分支(正向合并?),认为这样可以最小化两个分支之间的差异,同时保留特定于项目的更改。

我现在正在尝试的以及我遇到的问题是将 DEV_PROJ 合并到 DEV_VERS 分支。右键单击 Team/Merge my DEV_VERS 项目开始合并,有三个选项卡可供选择:URL、2 个 URL、重新集成。据我所知,这不是重新集成合并,而是从分支到主干,而不是在不直接相关的分支之间。我也不需要将两个分支合并到我的分支,因此我跳过 2 个 URL 选项卡。

所以我选择第一个,URL。作为来源,我从 DEV_PROJ 分支获取我的项目,修订:从副本开始,深度:工作副本。在第二次尝试中,我也选择了忽略祖先。在两次尝试中,我都按下“预览”按钮来大致了解要合并的目标文件。

我看到的是,有很多可供合并的文件,在我的 DEV_PROJ 分支中尚未更改。因此,(颠覆)合并过程中看到的合并候选者比我预期的要多得多。我添加到 DEV_PROJ 分支的文件显示为“已添加”,但我知道在该分支中未更改的大量文件在合并概述中显示为“已修改”或“树冲突”。

我的问题:

  1. 这是分支之间合并的正确方法吗?如果没有,可以直接使用合并菜单(URL、2URLs、重新集成)来完成吗?
  2. 我的第一步(将合并主干转发到 DEV_PROJ)是存在不应该存在的合并候选的原因吗?
  3. 如果没有直接的方法来正确合并这些分支,那么我只能看到一个选项。即将 DEV_PROJ 合并到主干(重新集成),然后将主干合并到 DEV_VERS 分支(前向合并)。这是正确的方法吗?如果是这样,这是唯一的方法吗?

Eclipse:Helios 服务版本 2,内部版本:20110218-0911
SVN服务器:1.6.15
Eclipse SVN 插件:SVNKit 1.3.2 (2.2.2.I20100512-1900)//SVN 连接器 (2.2.2.I20100512-1900)//SVN Team Provider (0.7.9.I20100512-1900)

最佳答案

如果我正确理解你的问题,这就是你的项目的状态:

        _________________ B        DEV_PROJ
/
A /
---------------------------------- trunk
C \
\_____________ D DEV_VERS

并且您想要 A -> B 中的所有更改在你的DEV_VERS分支。

如果是这样,我会做如下(以下是等效的命令行,但应该很容易找到 Eclipse SVN GUI 等效项):

  1. 查找 A 的修订版:

    • svn log --stop-on-copy URL_OF_DEV_PROJ
    • 最早的提交修订号是A点的修订号
  2. 查找 B 的修订版:

    • 假设您想要合并 DEV_PROJ 中的所有更改分支,值为B就是HEAD
  3. 结账 DEV_VERS :

    • svn co URL_OF_DEV_VERS
  4. 在步骤 3 中 checkout 的代码的目录中,合并 A 中的更改。至B如下:

    • svn merge -r<RevisionOfA>:HEAD URL_OF_DEV_PROJ .

简而言之,您所做的就是求 A 之间的差异B并将其合并到 DEV_VERS

关于eclipse - 如何在分支之间正确合并,从不同版本的主干分支?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6044983/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com