我正在尝试使用稀疏结帐在SVN中提交文件。稀疏在这里我的意思是我首先检查出空存储库,然后仅更新某些目录。
所以在我的用例目录结构中是。
+svn_project/
|
---+etc
| |
| ---+cfg
| |
| ---+config1
|
---+src
| |
| ---+java
| |
| ---+Test.java
|
---+lib
---+test
我使用以下方法对svn_project进行了空白结帐:
svn co -q --depth=empty file:///var/tmp/projects/svn_project/trunk/ /var/tmp/projects/temp
然后我使用以下方法检查了cfg和java目录:
svn co -q --depth=empty file:///var/tmp/projects/svn_project/trunk/etc/cfg /var/tmp/projects/temp/etc/cfg
svn update /var/tmp/projects/temp/etc/cfg/config1
svn co -q --depth=empty file:///var/tmp/projects/svn_project/trunk/src/java /var/tmp/projects/temp/src/java
svn update /var/tmp/projects/temp/src/java/Test.java
我尝试使用/ var / tmp / projects / temp中的CWD提交config1和Test.java,但它失败了。当我们进行稀疏检出时,是否可以将这些文件一起提交。
我知道使用cvs我们可以从任何地方指定存储库根目录和提交文件。
答案 0 :(得分:2)
你不能用Subversion做到这一点。使用Subversion,提交是原子的,只能从单个工作副本执行。
在您的情况下,/var/tmp/projects/temp/etc/cfg
和/var/tmp/projects/temp/src/java
是一个独立的工作副本,其中包含一个由Subversion管理的不的公共目录,因此您无法使用单个{{ 1}}。