我在与外部引用的svn项目,例如保护SVN的外部
- myproject | |--------stuff1 |--------stuff2 |--------external-lib // svn::external
我需要添加一个文件(Makefile文件)的外部lib目录里面,我想commint这里面我存储库(myproject
),而不是外部的。不要修改外部存储库非常重要。可能吗?我想使用外部存储库的头版本。
我在与外部引用的svn项目,例如保护SVN的外部
- myproject | |--------stuff1 |--------stuff2 |--------external-lib // svn::external
我需要添加一个文件(Makefile文件)的外部lib目录里面,我想commint这里面我存储库(myproject
),而不是外部的。不要修改外部存储库非常重要。可能吗?我想使用外部存储库的头版本。
我建议将Makefile直接存储到myproject中。完全的外部:然后你就可以从外部的lib使用
make -f ../Makefile.external
你想要什么是不可能的,除非你在你自己创建外部存储库的一个分支,沟SVN运行它。当然,这意味着你必须自己维护外部库的更新(通过合并(这可能相对容易实现自动化,因为除了添加此文件以外不需要修改任何内容)。
也就是说,马丁的解决方案似乎是在你的情况阻力最小的路径...
基于你的问题下的响应,以我的意见,如果你的服务器和客户机使用Subversion 1.6.x版, 你可以这样做。在Subversion 1.6.x中,文件外部支持现在可用。因此,对于包含在svn :: external路径中的每个文件和目录,您需要在myproject目录的svn:externals属性中创建并输入。
,当svn:externals属性会是这个样子:这里的外部:
^/external-lib/file1 file1
^/external-lib/directoryA directoryA
^/external-lib/file2 file2
^/external-lib/directoryB directoryB
您可以阅读更多有关SVN http://svnbook.red-bean.com/nightly/en/svn.advanced.externals.html
现在,只要外部lib和MYPROJECT 中存在同一个存储库,工作副本将允许您提交对external-lib中文件和目录的更改。
外部svn路径,它包含文件,或只是目录? – jgifford25 2010-11-29 19:51:57