Chinaunix首页 | 论坛 | 博客
  • 博客访问: 68855
  • 博文数量: 39
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 226
  • 用 户 组: 普通用户
  • 注册时间: 2014-06-04 09:56
个人简介

小小博客,不足为外人道

文章分类

全部博文(39)

分类: 项目管理

2014-06-13 10:34:42

前言

在Subversion1.5.0版本以前,想要checkout出单个文件是不可能的事情。 而在Subversion1.5.0中,引入了稀疏检出(Sparse checkouts)的特性,这使得检出单个文件成为可能。

假设我们有一个版本库,访问地址为http://www.iusesvn.com/project1

project1里面有一个目录images,目录里有很多图片文件,我们只想单独检出其中的logo.jpg

logo.jpg完整访问地址为logo.jpg


操作

我们可以这样操作:

A 通过命令行操作

1、检出目录images

svn co --depth=empty http://www.iusesvn.com/project1/images images_work_dir 

这样就在本地形成了一个工作拷贝目录images_work_dir

2、进入images_work_dir目录,单独更新logo.jpg

svn up logo.jpg 

这样,我们就单独检出了logo.jpg,后面就可以对这个文件进行修改、提交等操作。

B 通过TortoiseSVN操作

目前还不清楚TortoiseSVN该如何操作,希望知道的朋友补充


根据楼主上面的提示,我使用TortiseSVN客户端试验了一下,能正常检出,我做如下补充(还以楼主举的例子为例)。

1、使用TortiseSVN客户端(以1.5.3版为例)右键菜单中的“svn checkout”检出logo.jpg文件的上级目录images文件夹,在检出窗口中的“检出深度”处要选择“仅此项”,这样检出来才是一个空目录,本地命名为temp。

2、然后在temp文件夹上点右键,在弹出的TortiseSVN右键菜单中选择“检查更新”,在“检查更新”窗口中点击“检查版本库”,会列出该“images”目录下的所有文件。

3、在“检查更新”窗口中选中要检出的“logo.jpg”文件,点右键,在右键菜单中选择“更新”,即可将该文件单独检出。

注意事项

注意:本文所做的操作需要1.5.0或以上的Subversion客户端,即文中的svn程序需要1.5.0版本或以上,但是服务器端版本没有要求,1.5.0以下的也可以。


方法二
如果你只想checkout单个文件,单并不需要修改文件并提交回svn
那么用命令 svn cat http://www.iusesvn.com/project1/images/logo.jpg>logo.jpg
阅读(950) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~