linux - 如何合并两个 checkout 的 Subversion 分支(离线合并)?

标签 linux svn version-control merge offline

我在 Linux 上使用带有 rabbit-vcs 的 Subversion:

  • 在合并下它只显示在线浏览我的分支的选项 svn url
  • 没有将离线 svn 文件夹作为分支的选项。

因为我是 Subversion 的新手,所以实际上可以在 svn 上离线合并 2 个分支吗?

我有两个分支已经 checkout :

  • /home/user/branch1
  • /home/user/trunk

最佳答案

首先,read this .更好的是,read this以及。可以说,了解合并是了解如何正确使用 SVN 的最重要部分(首先,在创建新分支之前您会思考数千次 :))。

请注意,您将两个提交的源 合并到一个工作副本中。也就是说,即使您将其中一个来源指定为工作副本,它仍会采用其 URL 进行合并。所以这是一种客户可能支持也可能不支持的语法糖。原因是合并操作需要识别源的共同祖先并逐个合并它们。该信息不存在于工作副本中。

请注意此处可能造成混淆的来源:在许多(大多数?)实例中,工作副本参数可能指定两者要合并的来源要合并的工作副本合并成)。

这是我的意思的一个示例:假设您将 S1 和 S2 合并到 W 中。S1 和 W 包含文件 F,而 S2 不包含。现在,至少有两种可能: (1) S1 和 S2 的共同祖先 S 包含该文件,并在 S2 中被删除。然后合并应该从W中删除它; (2) S不含F,加入S1中。那么 F 应该保留在 W 中。有关 S 的信息根本不存在于本地,因此必须联系存储库。

要准确找出您的离线工作副本的分支 URL,请在 branch1trunk 中运行 svn info

关于linux - 如何合并两个 checkout 的 Subversion 分支(离线合并)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10409538/

相关文章:

svn--如何在不更新的情况下检查远程日志

linux - 使用 Linux 时虚幻引擎 4 启动时崩溃并出现(核心转储)错误

git - 使 `git svn find-rev` 搜索整个存储库

svn - 将 SVN 存储库移动到另一个 SVN 存储库作为子目录

svn - 适用于日常文件的良好版本控制系统

javascript - 维护第三方代码的自定义补丁

.net - Linux 上的 PowerShell - 如何加载\使用 .Net 程序集?

linux - 如何从终端中的任何目录运行 linux 可执行文件?

c++ - 如何与SDL库链接?

svn - 设置 SVN 存储库的基础知识