快速搭建Subversion

原创 2007年09月30日 09:00:00
 
服务器端Subversion
 
 
Subversion是一个自由/开源版本控制系统,和VSS相比,它的特点有:
·采用复制-修改-合并模型
允许多人同时编辑一个文件,在提交的时候,有服务器进行合并,发生冲突的时候需要手工解决。
·目录结构纳入版本控制
支持目录结构的修改和文件改名等操作,并且这些操作都将进行版本管理。
·原子提交
一系列的改动,要么全部提交到版本库,要么一个也不提交,这样可以让用户构建一个所要提交修改的逻辑块,防止部分修改提交到版本库。
·可选的网络层
Subversion可以作为一个扩展模块与Apache结合,这给了Subversion在稳定性和交互性方面很大的好处,可以直接使用服务器的特性—认证、授权和传输压缩等等。也有一个轻型的,单独运行的Subversion服务,这个服务使用自己的协议可以轻松的用SSH封装。
·有效率的分支和标签
分支与标签的代价不与工程的大小成比例,Subversion建立分支与标签时只是拷贝整个工程,使用了一种类似于硬链接的机制,因而这类操作通常只会花费很少并且相对固定的时间。
·多种存储方式
      Subversion可以采用数据库进行代码的存储,也可以使用文件存储。
·更有效的处理二进制文件
      只记录变化的部分,使得Subversion处理二进制文件更加有效。
·……
 
n          资源
Subversion服务器端:http://subversion.tigris.org/files/documents/15/31465/svn-1.3.1-setup.exe
 
n          安装
执行安装包,不需要特别的修改,假设安装在“C:/Program Files/Subversion”
 
n          配置
1.      确认环境变量
安装会自动在系统环境变量的Path变量中加入“C:/Program Files/Subversion/bin”,如不存在请手工编辑。
 
2.      建立一个源代码仓库
在windows控制台中运行“svnadmin create d:/data/subversion”,这样就会在指定的目录中建立代码仓库。
 
3.      设置全局访问权限
进入代码仓库的conf文件夹(d:/data/subversion/conf),编辑其中的svnserve.conf文件
[general]
### These options control access to the repository for unauthenticated
### and authenticated users. Valid values are "write", "read",
### and "none". The sample settings below are the defaults.
# anon-access = read
# auth-access = write
### The password-db option controls the location of the password
### database file. Unless you specify a path starting with a /,
### the file's location is relative to the conf directory.
### Uncomment the line below to use the default password file.
# password-db = passwd
其中#起始的行表示注释,因此在修改anon-access和auth-access属性后要删除行首的#。一般来说设置为anon-access = none,auth-access = none,即未验证的用户不能进行读写,通过验证的用户可以读写。password-db = passwd把行首的#去掉,表示密码文件为passwd。
 
4.      添加用户
进入代码仓库的conf文件夹(d:/data/subversion/conf),编辑其中的passwd文件
### This file is an example password file for svnserve.
### Its format is similar to that of svnserve.conf. As shown in the
### example below it contains one section labelled [users].
### The name and password for each user follow, one account per line.
 
[users]
# harry = harryssecret
# sally = sallyssecret
[users]节下定义了用户,等号前是用户名,等号后面是密码,注意删除行首的#。
 
5.      启动服务
在windows控制台中运行“svnserve -d -r d:/data/subversion”,Subversion服务开始监听3690端口,客户端通过这个端口和服务器进行交互,进行源代码的管理。如果需要自定义端口号,运行“svnserve -d --listen-port 自定义端口号 -r d:/data/subversion”启动服务即可。
 
n          注意
1.      服务启动后,不要关闭控制台窗口,一旦关闭窗口,服务就停止运行了。可以将其包装为windows服务,参见服务器端实用工具——SVN Service Wrapper for Windows。
2.      Subversion使用Socket通讯,请在防火墙中将使用的端口号设置成例外。
 
n          参考资源
Subversion官方网站:http://subversion.tigris.org/
Subversion中文文档:http://svnbook.red-bean.com/

 
 
服务器端实用工具——SVN Service Wrapper for Windows
 
 
对于在windows平台下运行的Subversion,可以将控制台程序包装成服务,这样就可以在服务器启动的时候自动启动服务,方便服务器的管理。
 
n          资源
SVN Service Wrapper for Windows:http://clanlib.org/~mbn/svnservice/SVNService.zip
 
n          安装
解开压缩包,将其中的SVNService.exe文件,复制到Subversion的bin目录,如“C:/Program Files/Subversion/bin”
·安装服务:
在控制台中运行“SVNService -install [svnserve命令的参数]”,如“SVNService -install -d -r d:/data/subversion”
·更改参数:
在控制台中运行“SVNService -setup [svnserve命令的参数]”,如“SVNService -setup -d --listen-port 6681 -r d:/data/subversion”
·卸载服务:
在控制台中运行“SVNService –remove”
 
n          参考资源
官方网站:http://clanlib.org/~mbn/svnservice/

 
 
客户端——TortoiseSVN
 
 
TortoiseSVN是Subversion的一个客户端,它最大的特点是不需要任何IDE,而与windows资源管理器集成。
 
n          资源
客户端:http://nchc.dl.sourceforge.net/sourceforge/tortoisesvn/TortoiseSVN-1.3.3.6219-svn-1.3.1.msi
语言包:http://jaist.dl.sourceforge.net/sourceforge/tortoisesvn/LanguagePack_1.3.3_zh_CN.exe
 
n          安装
执行客户端安装包,注意选择自定义安装,有个针对.net web项目的选项,默认安装在“C:/Program Files/TortoiseSVN”,然后进行语言包的安装。
 
n          配置
1.      改变语言
虽然安装了语言包,但TortoiseSVN也不会自动切换界面语言,需要在windows资源管理器的菜单栏中,选择“文件->TortoiseSVN->Settings”命令,在弹出的窗口中选择“简体中文”。
 
n          常用命令
1.        文件库浏览器
在URL框中输入SVN服务器的地址,如svn://oa.menhoo.com:6681,按照提示输入用户名和密码,即可进入版本库的浏览界面,右上方有个版本“Head按钮”,Head就是最新版本的意思,在这里可以进行一些打开、保存、删除等常用操作。注意,这里进行的操作将直接影响服务器版本库中的内容,而不是本地的副本。
2.        导出
将版本库中选中的目录和文件按照指定的版本号的内容进行导出,默认情况下将导出最新版本,这个命令类似于VSS中的获取最新版本。注意导出和取出的区别,可以将这个命令简单的理解为下载。
3.        在此创建版本库
创建一个新的版本库,只有服务器才需要这个操作。
4.        导入
将当前路径下的所有文件导入到版本库中。类似VSS中创建了一个新项目,然后添加文件。与VSS不同的是,当前路径下的文件可以被删除掉,因为它们不再被Subversion所使用,可以将导入命令简单的理解为上传。
5.        取出
在当前文件夹中建立版本库中项目的副本,类似VSS中的设置工作目录和获取最新文件。当文件取出完成后,在当前目录里有了一个版本库的个人拷贝,可以编辑你的工作备份中的文件,并且提交到版本库。
6.         
 
n          参考资源
TortoiseSVN官方网站:http://tortoisesvn.tigris.org/
 

用Ubuntu 11.10+Apache SSL,Subversion ,trac快速搭建一个项目管理系统

目标:快速构建一个项目的管理系统,包括源码管理,web服务,bug追踪,工程进度,wiki 基本步骤: 1、安装Subversion 2、安装Apache 3、在Apache中配置SSL 4...

MyEclipse8.5快速搭建SSH框架

  • 2015年11月04日 10:50
  • 1.43MB
  • 下载

win7快速搭建虚拟wifi

  • 2013年05月12日 15:31
  • 914B
  • 下载

用docker快速搭建l2tp VPN服务器

之前一直使用pptp的vpn,挺好用,搭建也挺简单,网上也有好多相关的博文,大家可以任找一篇参考。后来手贱,升级了ios10和mac os,结果新版系统不再支持pptp协议,只好重新搭建l2tp vp...
  • xindoo
  • xindoo
  • 2016年10月16日 15:16
  • 7354

JEECG整合finereport快速搭建与开发

  • 2015年05月11日 15:31
  • 220KB
  • 下载

Spring Boot 快速搭建及简单演示

1、 官网开速生成项目 1.1 在浏览器上输入地址:http://start.spring.io/。 可以选择一maven和gradle,我这里用maven来构建项目 1.2 填写maven信...

3分钟快速搭建nodejs本地服务器运行测试html/js

(前端工程师利器)做前端的都知道,公司的项目在自己的电脑上搭建环境是挺麻烦的一件事情 首先:一般个人电脑没公司的配置性能好, 其次:搭建公司项目在自己电脑涉及很多缓存环境,资源环境包,数据库等的限制,...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:快速搭建Subversion
举报原因:
原因补充:

(最多只允许输入30个字)