svn checkout和export的区别:
(1)check out跟check in对应,export跟import对应。
(2)check out导出获得文件后,导出的文件仍处于SVN版本控制中,与版本库保持关联,比如你可以进行Svn Update或者Svn Commit操作。同时导出文件夹下有一个.svn的隐藏文件夹,存储着一些版本的元数据信息。
(3)export 简单导出一个版本的数据,导出的文件脱离SVN版本控制,修改后无进行Update和Commit操作。导出文件夹下没有.svn目录
知道了这些区别,使用场景又有什么不同呢?
当你要发布或编译的时候,最后采用export,它不会引入svn的附加文件
当你需要修改和提交的时候,用checkout,它会在你本地建立一个工作区。
当然平常我们使用最多的就是checkout了,但是比如我只是想检出一个sh文件并在将来某一个时刻去执行它,这时候不需要svn信息,也不提交,自然就可以使用export了。
svn export -r HEAD --no-auth-cache --force --depth infinity svn://127.0.0.1/lzzcms3.0/trunk d:/zhao/code/
--username zhao --password 123456
上面的命令表示检出最新版本的所有文件(无穷深度),从svn://127.0.0.1/lzzcms3.0/trunk这个svn地址检出到本地磁盘的code文件夹,svn的用户名和密码是zhao/123456