2014-09-02 87 views
1

SVN在本地工作副本目录所在的根目录中创建.svn目录。是否有可能将.svn移动到不同的目录中以使工作副本具有干净的目录? 让说,我有这样的目录结构: - Foo - .svn (for working_copy_from_svn_repository) - working_copy_from_svn_repository拆分.svn和工作目录

,但我想有: - Foo - working_copy_from_svn_repository - Bar - .svn (for working_copy_from_svn_repository)

这可能吗?如果没有,那么你是否知道任何允许将本地控制文件移动到特定位置的版本控制系统?

+1

这是什么用例?我猜你需要完成的任务比你想象的要容易得多。 – bahrep 2014-09-02 12:23:41

+0

@bahrep假设用户1有权读/写Foo,但他没有提交任何内容(他甚至不知道它与任何存储库连接)。还有User2(每天系统任务)必须提交来自Foo的所有更改,但它具有Foo的只读权限和Bar的读写权限。只是将其解释为版本备份的愚蠢系统。 – Bogdan 2014-09-02 12:32:01

+0

为什么除了User2以外的所有用户都不能将'Deny' - 'Full Access'规则设置为'.svn'? – bahrep 2014-09-02 12:33:45

回答

0

我不认为有一种简单的方法将.svn元数据目录移动到另一个位置。这种定制可能需要对Apache Subversion工作副本代码进行重大修改。

PS出于好奇心我刚刚试图在Windows上创建一个目录连接与mklink,它并没有帮助。但是,可能工作在* nix系统上。

+0

我刚刚尝试过目录连接而不是.svn,但是对于工作副本而言,它工作正常。似乎可以使用联结创建虚拟目录结构,然后将其添加到SVN存储库中。谢谢! – Bogdan 2014-09-02 13:40:35

+0

@Bogdan彻底测试这样的解决方案!我认为这种解决方案可能会带来意想不到的副作用。 – bahrep 2014-09-02 13:49:54