我使用TortoiseSVN 1.5.3和VisualSVN 1.5.3(Subversion 1.5.2)
假设我创建了trunk(/ trunk)的新分支(/ branches / branch1),然后某人(也使用TortoiseSVN 1.5.3)将其分支合并回主干。
我尝试从主干合并到分支中(以获取可能已被其他人合并到主干中的所有更改)
我没有指定任何特定的修订版,因为我希望合并跟踪确定我需要合并哪些修订版。我希望这些是我创建分支之后的修订。
当我开始合并时,输出对话框似乎将每个修订版合并回修订版1.这会导致存储库中的所有内容都被“添加”。
我做错了什么?....我希望将一个修订版作为目标,并且这是一个非常快速的操作。
我试过......
SVNAdmin Upgrade <MyRepoPath>
这导致了一条瞬间成功的消息,之后我重复了我的实验而没有改变结果
更新:我注意到TortoiseSVN对话框显示“要合并所有修订版,请将框保留为空。”......这是否意味着TortoiseSVN正在添加1-Head明确表示没有办法使用Merge-跟踪?这看起来有点奇怪。
答案 0 :(得分:1)
解决:答案似乎是我们在这里为Subversion中的一些先前的错误实现的解决方法。
解决方法涉及使用SomeUserName @置于url中。从而
http://SomeUsername@Myserver:8080/myrepo/trunk
...正在使用而不是......
http://Myserver:8080/myrepo/trunk
似乎在没有添加的情况下检索了分支的工作副本,并且正在使用此添加对URL进行合并。这导致Subversion推断他们是2个不同的网址,并且自然地(ish)推断他们没有共同的历史来定位要合并的起点。
因此,解决方案是确保用于合并的“from”网址格式与工作副本使用的网址格式相匹配。
答案 1 :(得分:0)
我认为你需要使用Branch作为你的URL。原因是您的Trunk版本现在高于您的分支,因此您需要从最低版本开始。