问题标签 [svn-merge]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
148 浏览

svn - SVN从主干合并新线路到分支冲突

在将主干的修订合并到分支时,我希望实现以下目标:

修订版 1(这也是分支版本):

修订 2:

修订版 3:

通过在分支上执行以下命令:

我期待得到以下结果

但相反,我遇到了树冲突。这种技术似乎适用于在文件中间添加新行,而不是在文件末尾。

0 投票
3 回答
1889 浏览

svn - svn merge:奇怪的树冲突

我在 SVN 中遇到树冲突。有点奇怪!

我有标准的主干、分支、标签结构,并遵循多团队模型。Branch1、Branch2 是从 Trunk 和 active 并行创建的

遵循的步骤:
1 Branch1 Work.:newfile.c添加并提交Branch1
2 Merge.:从 Branch1 -> Trunk(成功;文件添加到 Trunk)
3 Merge.:从 Trunk -> Branch2 向下合并。(成功;在 Branch2 中添加文件)
4. Branch2 Work:执行常规的 Branch2 工作并提交。
5. Merge: 从 Branch2 到 Trunk => 这一步会引发 Tree-conflict fornewfile.c

newfile.cBranch2 团队遇到了他们根本没有接触过的树冲突。为什么会这样。请问有什么建议可以避免吗?这个问题困扰着我很多。

PS:我使用了 TortoiseSVN 客户端 1.6.0 和 TortoiseSVN 1.6.16 - 32 位(分别使用)

合并错误(以上步骤 5):

PFB svn repo 日志(以上步骤 1-4):

0 投票
1 回答
273 浏览

svn - SVN合并基础

我的问题与SVN合并机制的一些基本原理有关。我没有在这里报告合并问题。此外,我已经阅读了 SVN 书的合并章节(不是新手)。

我在主干上有 10 个修订版,我想将修订版 5、6、7、8、9 和 10 合并到特定标签。

通过运行 6 次合并操作,我可以在 tortoise SVN 中成功合并。每次我只指定一个版本(即 5、6、7、8、9、10)。

如果我对 SVN 修订版的理解是正确的,那么修订版 10(HEAD 修订版)具有以前修订版的所有修复,即 5、6、7 和 9。因此,我可以通过只运行一次合并操作来节省时间,即通过指定修订版 10。

对我的问题的明显反应是我应该指定一个“修订范围”。

我的问题是为什么即使在修订版 10 包含以前修订版的所有更改时还要指定一个范围(http://svnbook.red-bean.com/en/1.7/svn-book.html#svn.basic.in-action )? 我不能只通过指定单个修订版(第 10 号)进行合并并期望 SVN 进行正确的合并吗?

0 投票
1 回答
290 浏览

svn - SVN 合并 - 客户端还是服务器?

当两个用户更改同一个文件(在同一个分支中)并将他们的代码检查到 SVN 中时,SVN 将(在要求第二个用户进行更新后)自动合并文件并尝试解决任何冲突。

这个合并过程是发生在客户端还是服务器上?

(更多信息:我在客户端使用 Tortoise SVN 1.7.11,服务器版本是 1.5.1,我们最近有一个自动合并删除一些数据,我想知道这是否是代码合并的问题Tortoise 或旧的服务器代码)

0 投票
1 回答
14259 浏览

svn - 使用分支的 SVN 策略,并将更改从主干合并到分支

SVN 的长期用户,但在分支/标记方面相当缺乏经验,当我有时,我怀疑我并没有真正正确地使用它或充分发挥其潜力。

我有我的主干,我致力于添加新功能等。这个代码库用于多个网站,我们在每个项目的基础上从主干创建一个分支。

每个分支通常都有特定于该项目的修改,并且我们认为可以重用的任何内容都添加到主干中,并且可以在各个项目上打开和关闭该功能。

目前,当我们对主干进行更改并希望将这些修改放在提前的分支中时,我必须通过手动将某些修订合并到分支中并重新提交它们。不理想,而且容易错过东西。

所以,我的问题......有没有办法用主干的所有更改来更新我的分支,并像处理标准主干更新一样处理它们?

我已经看到将分支重新集成到主干,但是由于我在这种情况下使用分支的方式,这并不是我真正想做的事情。

0 投票
2 回答
13884 浏览

svn - svn合并和自动解决冲突

我是 svn 的新手,需要从主干合并到我们正在工作的分支。这是我用来合并的 svn 命令序列

我从分支和最新的主干修订中获得了合格修订的最低修订,然后进行 svn 合并。

在合并期间有一些冲突。但是,它们与我们在分支中所做的任何更改都无关,所以我有点困惑为什么它们是冲突的。有任何想法吗?不管怎样,我总是只是选择,他们的-full来解决它

最后,我需要在提交之前做 svn resolve

我有两个问题。这是从主干到分支执行合并的最佳命令序列吗?

合并往往需要一段时间,所以我想让它合并,让 svn 自动解决冲突到他们的完整。有没有办法做到这一点?

0 投票
0 回答
120 浏览

svn - 在 SVN 中合并时阻止对属性/外部的更改

我设置了一个环境,其中我的外部指向每个分支中的不同位置。当我将代码从一个分支合并到另一个分支时,我总是会在项目属性中遇到必须手动解决的合并冲突。

这很容易在 gui 中完成,因为我需要做的就是保留我的本地版本,但我需要它:

  1. 忽略外部存在差异的事实,或
  2. 自动接受我的本地修订并继续合并。

我尝试过使用 --record-only 开关,但这似乎会阻止对代码和属性的更改。有什么东西只能在属性上运行,特别是我的外部设置?

0 投票
1 回答
58 浏览

svn - 是否可以将 SVN 功能分支重新集成到不同的发布分支中?

假设我从发布分支“Version1.0”创建了一个 SVN 功能分支“Feature123”,用于开发新功能。我已经在我的功能分支中进行了一些更改并将它们提交到存储库,但尚未将功能分支重新集成到发布分支中。同时,我们还创建了一个“Version2.0”发布分支,以备将来发布。现在我的经理告诉我,他不希望我的 feature123 在 1.0 版中,而是在 2.0 版中。

有没有一种方法可以将我的 Feature123 分支重新集成到 Version2.0 中,即使功能分支是作为 Version1.0 的分支创建的?

0 投票
1 回答
148 浏览

mercurial - Mercurial 相当于 svn 的合并 --record-only?

我们最近将我们的代码库从 subversion 转移到了 mercurial,并在本周末将我们的第一个版本从 mercurial 代码库发布到生产环境。

我们有三个 repo 设置,我们称它们为devstablerelease,其中dev是 stable 的克隆,stablerelease克隆。目前,dev有我们的版本 7 代码,而stable有我们的版本 6 代码。我们刚刚将版本 6 代码推送到release。我们的下一个版本 6.1 版计划于下周发布。

问题是,由于我们也在 v6 版本中进行了重大升级,我们预计在 6.1 版本之前发布多次(6.0.1、6.0.2 等)。展望未来,这将不是问题,因为所有三个存储库都有不同的版本号,但现在稳定版和发布版都是 v6。

如果我将稳定版 pom 中的版本号更改为 6.1,则必须将此更改拉回dev,这意味着在构建任何这些人工制品之前将其修复(以免污染 v6.1 版本)什么是真正的 v7 人工制品)。

有没有办法告诉 mercurial 在不实际接受更改的情况下将此更改拉入dev中,类似于 svn 的 merge --record-only 所做的?将更改拉到dev然后退出的唯一选择是什么?

谢谢

0 投票
1 回答
28 浏览

svn - svn合并后,之前的版本是否混淆了

我对以下情况的 svn merge 有疑问:

repo/A 是主干。它有两个子分支调用 repo/B 和 repo/C

  1. 假设最初 repo/B 有修订版 10。
  2. repo/C 将 foo.c 合并到 repo/A,修订版变为 11。
  3. repo/B 的工作副本提交 bar.c 到 repo/B,revision 变为 12。注意此时 repo/B 没有 foo.c。我们称之为“NO-FOO-STATE”。
  4. 现在 repo/B 从 repo/A 合并并得到 foo.c,repo/B 中的修订版变为 13。

我的问题是:

  1. 所以现在如果我从 repo/B 中查看第 12 版。我还将在我的工作目录中获取 foo.c,对吗?我如何(或我能够)签出与“NO-FOO-STATE”内容完全相同的第 12 版?

  2. 如果我使用以下命令 sudo 代码:

svn 删除回购/B

svn 复制 repo/B@12 repo/B

我尝试通过删除 repo/B 和 svn copy repo/B@12 来恢复到修订版 12。新还原的 repo/B 是否还有 foo.c?如果是,我怎样才能恢复到“NO-FOO-STATE”。

非常感谢。