我可以查看svn:externals到父目录的根目录吗?

时间:2011-08-08 20:18:09

标签: svn

我有两个svn存储库,分别用于iOS和Android版本的移动应用程序。这两个版本的应用程序共享一个相同的SQLite数据库。目前,每个仓库都有自己的数据库副本,这意味着必须对变更进行两次更新。

相反,我想添加一个包含数据库的第三个repo,并使用svn:externals将一个副本拉到checkout上的工作文件夹中,以获取给定版本的应用程序。我能够设置外部,但在结账时它会在我的工作目录中创建一个子文件夹并将外部文件放在那里。我希望它在不创建子文件夹的情况下下拉外部文件。

我尝试使用../作为外部定义中的本地路径,但没有成功。

这可能还是我应该寻找另一种方法?

编辑 - 感谢Manojlds的一个很好的答案,我能够在自己独立的存储库中使用数据库。我仍然有点困惑,因为TortoiseSVN文档明确指出:

  

外部文件的URL必须与URL位于同一个存储库中   将外部文件插入;存储库间文件   不支持外部。

我可以找到我所指的文档here.我正在添加一个链接,以防有人遇到这个问题,并且像我一样困惑。

2 个答案:

答案 0 :(得分:1)

你应该可以这样做:

svn propset svn:externals "^/path/sqlite.db sqlite.db" .

(上面的完整路径,如果它是一个不同的回购 - 为什么你需要一个不同的回购?它可以是同一个回购中的不同文件夹,iPhone和Android应用程序也是同一个回购中的单独项目。但是这是一个单独的讨论)

答案 1 :(得分:1)

你的编辑没有意义,因为TortoiseSVN对我来说确实强制执行文档所说的内容,你不能在另一个回购中外部文件。我认为没办法解决这个问题,但是你声称你做到了。你确定你不只是将这三个项目放在同一个回购中吗?

这不是TortoiseSVN问题,因为SVN文档说的是同样的事情。 http://svnbook.red-bean.com/en/1.7/svn.advanced.externals.html

如果我有足够的声誉,我会发表评论。