SVN的文件夹链接(目录链接,目录映射,svn:externals)
首先大家可以看下SVN的文件夹链接太强大了!(目录链接,目录映射,svn:externals),我就是看了这篇文章才敢大刀阔斧的把项目里的外链修改成正确的链接。
问题:
我们的项目里,服务器脚本工程svn地址为:svn://server/script;配置文件地址为:svn://server/cfg。都是独立的仓库。有一天,对外发布人员觉得每次都Update两次很烦,说能否把类似这种目录都放在一个仓库里,只需要Update一次就可以了。
是否所有资源、代码都用一个仓库就ok了呢?千万不要这么做,因为
svn的效率很低!
svn在管理代码这种文本文件(而且相比美术资源体积不大,文件不算多)的时候,下载、上传、查上传log速度还是可以接受的。我们已经做了多年的仓库依然能应付过来。
但是管理二进制文件的时候,速度实在是慢的令人发指,角色、场景这种容量、文件数比较夸张的目录,完全下载一次甚至可以用掉4个小时。随着时间流逝,历史记录越来越长,下载速度就越来越难以容忍了。
解决方案:
把不同种类的资源放在不同的仓库里,具体怎么放可以由有经验的资源管理人员安排。然后,建立一个资源主干仓库。里面用文件夹链接的形式,存放各种资源。(毫无疑问,我们的项目就是这样安排的。程序目录内,外链了数据仓库,美术资源仓库)
资源管理员一旦设置好svn:externals属性之后,对用户来说,上传、下载都没有区别,就好像文件夹真的在主干仓库里一样。
等过了一段时间,例如半年,某一种资源太多需要清理的时候。管理员把现有资源干净的拷贝出来到新仓库(或者新目录),例如cha目录下所有文件拷贝到cha2目录,只要最后的结果文件不要svn信息。然后修改svn文件夹链接的地址。
修改好后,用户直接使用就ok了。达到了不影响其他人员的同时优化svn速度的目的。
(仅试验过,还没有在项目里实用,最后一步用户更新时可能会有冲突)
---------------------------------------------------------------------------------------------------------------------
ps:除了红色字体是我添加的之外,上文都是链接博客内的原文。
我现在遇到的问题是,程序目录内的外链,链接的是拷贝之前的外链。现在需要修改成正确版本的外链地址。(想到要偷摸的悄不作声的修改,心里激动的要死咯)
首先在SVN的browser窗口内定位到需要修改的外链的父目录。
右键,选择Show Properties.
在打开的properties窗口内,会看到svn:externals。选中后,双击就可以打开path,URL面板。在这个面板内修改成正确的URL,点击ok,并提交即可。
最后,说下,亲测,有效。
SVN的文件夹链接(目录链接,目录映射,svn:externals)的更多相关文章
- Linux下svn提交文件后自动同步更新到网站目录
有时,对于多文件需要上传到服务器的时候将会很麻烦,但是如果使用svn的钩子脚本就容易实现本地提交svn后,自动同步代码文件到远程服务器的网站目录下,而不必手动上传了. 首先,在网站目录下checkou ...
- Linux ln命令 - 建立文件/目录链接
转自Linux ln命令 - 建立文件/目录链接 1. 使用方式:ln [option] source_file dist_file -f 建立时,将同档案名删 ...
- WINDOWS 的 MKLINK : 硬链接,符号链接 : 文件符号链接, 目录符号链接 : 目录联接
玩转WIN7的MKLINK 引言: 换了新电脑,终于再次使用上啦WIN7 ,经过一个周每天重装N次系统,... ... ... ... 在xp系统下,junction命令要用微软开发的小程序 junc ...
- Linux的硬链接为何不能链接目录
Linux中的目录文件是特殊的文件,其中的数据是一个关联列表的,像c++中的map,或者Python中的dict,保存每个文件名(包括子目录,Linux中一切皆文件!)到iNode的映射.iNode本 ...
- 如何使用svn命令行更新想要的目录?
内容来自网络. 一 某些原因想在svn co的时候排除某些目录,可以绕个圈子,分三步来完成:co外层目录:svn checkout --depth empty URL[URL[LOCATION]完成之 ...
- 解决 mklink 使用中的各种坑(硬链接,软链接/符号链接,目录链接)
通过 mklink 命令可以创建文件或文件夹的链接,而这种链接跟快捷方式是不一样的.然而我们还可能会遇到其使用过程中的一些坑,本文将整理这些坑并提供解决方法. 0x00 背景介绍:mklink m ...
- 目录、目录项、文件名、inode、软硬链接的关系
对于Unix系列的操作系统,大多都有v节点.但是对于linux来说,只有通用的i节点,却没有v节点. 下面来探讨一下,linux下的i节点. linux中,文件查找不是通过文件名称来查找的.实际上是通 ...
- CentOS下安装配置SVN服务器并自动同步到web目录
一.安装 yum install subversion测试是否安装成功 /usr/bin/svnserve --version如提示以下内容,说明已安装成功 svnserve,版本 1.6.11 (r ...
- 在linux上搭建SVN服务器并自动更新至WEB目录
1.仓库放在 /var/svn/ 目录下,并且仓库名为 project 2.创建用户组user,该组下添加两个成员user1.user2,密码直接用用户名,两用户可以checkout代码和提交代码 3 ...
随机推荐
- IE9或以上的浏览器flash值为空时,导致domready不触发
在前些时间开发中遇到一个问题当flash值<param name="movie" value=""/>为空时,IE版本>=9不会触发domre ...
- 横竖屏切换时Activity的生命周期
设置横竖屏切换时Activity生命周期的属性设置,在清单文件中的Activity节点中设置.根据具体需求设置: 1.不设置Activity的android:configChanges时,切屏会重新调 ...
- T4模板之初体验(语法)
一.什么是T4模板 T4是Text Template Transformation Toolkit(文本模板转换工具包)的四个英文首字母的简称.是微软提供的一种代码生成引擎. 在ADO.NET实体数据 ...
- ORACLE恢复神器之ODU/AUL/DUL
分享ORACLE数据库恢复神器之ODU.DUL和AUL工具. ODU:ORACLE DATABASE UNLOADER DUL:DATA UNLOADER AUL:也称MyDUL 关于三种工具说明: ...
- 简单理解在Mac OS X上运行ASP.NET程序
运行ASP.NET程序的三要素: 1) CLR(.NET运行时) 2) KRE(ASP.NET运行时) 3) Web服务器 所以在Mac OS X上运行ASP.NET程序,就需要对应这三要素的东西: ...
- SQL Server FileStream
以往我们对文件管理有两种方法: 数据库只保存文件的路径,具体的文件保存在文件服务器(NFS)上,使用时,编程实现从文件服务器读取文件: 将文件直接以varbinary(max)或image数据类型保存 ...
- YUI Compressor for Sublime text2
YUI Compressor 是一个用来压缩 JS 和 CSS 文件的工具,采用Java开发. 最近压缩文件,常使用在线压缩的方式来压缩文件,一来多有不便,二来如果没有网络,只能搁置了.本文来描述如何 ...
- spring定时任务轮询(spring Task)
定时任务轮询比如任务自服务器启动就开始运行,并且每隔5秒执行一次. 以下用spring注解配置定时任务.1.添加相应的schema xmlns:task=" xsi:schemaLocati ...
- ubuntu安装ftp服务器
ubuntu安装ftp服务器 1: 安装vsftpd ~$ sudo apt-get install vsftpd ubuntu10.10自己装了,这步省略. 2: 配置vsftpd 2.1 修改vs ...
- [Java拾遗三]JavaWeb基础之Servlet
Servlet 1,servlet介绍 servlet是一项动态web资源开发技术. 运行在服务器端. 作用:处理业务逻辑,生成动态的内容,返回给浏览器 ...