0

我使用 TortoiseSVN 1.5.3 和 VisualSVN 1.5.3 (Subversion 1.5.2)

假设我创建了主干(/trunk)的一个新分支(/branches/branch1),然后有人(也使用 TortoiseSVN 1.5.3)将他们的分支合并回主干。

我尝试从主干合并到分支(以获取可能已被其他人合并到主干的所有更改)

我没有指定任何特定的修订,因为我希望合并跟踪来确定我需要合并哪些修订。我希望这些是在我创建分支之后的修订。

当我开始合并时,输出对话框似乎将每个修订版合并回修订版 1。这会导致存储库中的所有内容都被“添加”。

我做错了什么?....

我试过了...

SVNAdmin Upgrade <MyRepoPath>

这导致了一条即时成功消息,之后我重复了我的实验,结果没有变化

更新:我注意到 TortoiseSVN 对话框显示“要合并所有修订,请将框留空。”...这是否意味着 TortoiseSVN 正在显式添加 1-Head 并且无法使用合并跟踪?这似乎有点奇怪。

4

2 回答 2

1

已解决:答案似乎归结为我们在此处针对 Subversion 中的一些先前错误实施的解决方法。

解决方法涉及使用 SomeUserName@ 放置在 url 中。因此

http://SomeUsername@Myserver:8080/myrepo/trunk

...被用来代替...

http://Myserver:8080/myrepo/trunk

似乎在没有此添加的情况下检索了分支的工作副本,并且正在使用此添加对 url 进行合并。这导致 Subversion 推断它们是 2 个不同的 url,并且自然地(ish)推断它们没有共同的历史来定位要合并的起点。

因此,解决方案是确保用于合并的“来自”url 的格式与工作副本使用的 url 的格式相匹配。

于 2008-10-07T11:19:19.843 回答
0

我认为您需要使用 Branch 作为您的来自 URL。原因是您的 Trunk 版本现在高于您的 Branch,因此您需要从最低版本开始。

于 2008-10-06T18:17:50.840 回答