如何在执行svn合并时更新外部属性

时间:2012-03-01 23:42:06

标签: svn merge external

我有一个私人分支,从主干开始过时了。当我从主干进行SVN合并时,似乎它没有使用来自主干的新值更新外部相关存储库的修订值。我正在使用SVN 1.6.16。我还缺少一个额外的步骤吗?

同样svn文件似乎表明,主干的头部与我的私人分支的新近检出的副本(尚未进行我的更改)的简单合并将导致"删除从未发生的主干更改你的分支"。我只是想让我的私人分支机构与主干和签到更新。我计划在将我的私人分支机构更新为主干后检查我的更改。

好吧,我真的很感激有什么亮点:当我从trunk目录进行svn合并并执行svn propget svn:externals。时,我似乎得到了更新的修订版值,但是当我做了svn up时,它确实什么都不做看起来有一个文件dir-prop-base仍然保留旧值。不知道propget在哪里阅读。所以问题是什么是propget给我看的?以及如何更新dir-prop-base文件?另一个有趣的事情是,当我明确地在一个文件夹上做propset,然后在该文件夹上svn似乎更新文件夹,但是当我做svn信息时,它仍然显示文件夹上的旧修订值,尽管文件夹实际更新

2 个答案:

答案 0 :(得分:0)

解决方案是我必须将外部属性提交到我的私有分支然后检出。提取了正确版本的外部存储库。

答案 1 :(得分:0)

问题是,svn merge根本不更新任何具有修订更改的外部组件的工作副本。您可以通过比较svn propget svn:externals .svn info <external-directory>的输出来看到这一点,这两个版本将不同步。我认为这是svn中的错误。

要修复此问题,只需执行svn checkout <external-url>@<revision> <external-directory>即可将现实与理论相匹配。