我正在尝试将分支重新集成到trunk,但是当我点击TortoiseSVN中的“Test merge”时,我收到此消息:
Command: Reintegrate merge https://127.0.0.1/svn/global/branches/somebranch into D:\wwwroot\work
Error: Reintegrate can only be used if revisions 8459 through 11952 were previously
Error: merged from https://127.0.0.1/svn/global/trunk to the reintegrate
Error: source, but this is not the case:
Error:
Error: branches/somebranch/file.js
Error:
Error: Missing ranges:
Error: /trunk/file.js:11059,11212,11392,11486,11719,11732-11733
Completed!
但是,分支和trunk中的文件完全相同。当我将trunk合并到我的分支时,这个文件在somebranch中。
有人遇到过这个问题吗?
答案 0 :(得分:1)
我不是SVN的专家,但我认为您的回答是:http://tortoisesvn.net/docs/release/TortoiseSVN_en/tsvn-dug-merge.html#tsvn-dug-merge-maintenance和http://svnbook.red-bean.com/en/1.7/svn.branchmerge.basicmerging.html#svn.branchemerge.basicmerging.stayinsync
简而言之:无论您的实际更改是什么,您都需要让分支与主干保持同步,以便重新整合确切知道哪些内容已经发生变化。
如果您只在分支中进行更改而在主干中没有更改,则这不是问题。但是,一旦你在行李箱中进行了一两次更改,分支机构就需要包含这些更改。
答案 1 :(得分:1)
如果您正在分支机构并且一直在与其他人一起工作,那么当您创建主干的工作副本并尝试重新集成您的分支时,如果您收到类似这样的消息,则可能会感到困惑:< / p>
~/python/orb2 $ svn merge --reintegrate https://paulwhippconsulting.slsapp.com/source/orb/branches/bronze_services
svn: Reintegrate can only be used if revisions 650 through 694 were previously merged from https://paulwhippconsulting.slsapp.com/source/orb/trunk to the reintegrate source, but this is not the case:
branches/bronze_services/occl
Missing ranges: /trunk/occl:650-693
我在谷歌上看过很多变通办法,但是他们让我感到紧张,因为“黑客”。为了解决这个问题,我决定做一下subversion在消息中暗示的内容。我回到我的分支并明确合并了指定的修订:
~/python/orb $ svn merge -r 650:693 https://paulwhippconsulting.slsapp.com/source/orb/trunk
~/python/orb $ svn commit -m 'merged revisions 650:693 from trunk'
Sending occl
承诺修订695。 一旦我这样做了,我就能够回到trunk的工作副本并重新整合分支而没有任何问题。
我希望这会有所帮助