我有一堆相互关联的项目,它们共享同一个项目树。我正在寻找一个版本控制系统,它可以检查项目树的一个子集。
如果我的完整项目树看起来像这样:
Project Root
|-Feature1
| |-SubFeature11
| \-SubFeature12
|-Feature2
| |-SubFeature21
| \-SubFeature22
|-file1
\-file2
我希望能够只签出这样的子集:
Project Root
|-Feature1
| \-SubFeature12
|-Feature2
| \-SubFeature22
|-file1
\-file2
那么你知道任何允许选择性结账或存储库视图的版本控制系统吗?
答案 0 :(得分:3)
SVN支持此功能,搜索sparse directories。
如果你正在使用togoise svn你应该做的是检查根目录不递归然后打开存储库浏览器,找到你要添加的目录并右键单击 - >更新到修订。
编辑使用更高版本的乌龟(我不记得从哪个版本开始,但是如果您正在阅读此版本,那么当前版本包含它)则更容易,只需点击执行递归结帐时选择项目... 按钮。
答案 1 :(得分:1)
从版本1.7.0开始,Git也支持sparse checkouts。创建配置文件.git/info/sparse-checkout
并将路径存储到要作为此结帐的一部分的子项目。有关详细信息,另请参阅这些related questions。