安装
添加需要的USE 标记:(如果愿意加入到/etc/make.conf 中作为全局配置也可以)
# echo 'dev-util/subversion svnserve apache2' >> /etc/portage/package.use
emerge subversion 服务器与客户端程序:
# emerge subversion
[ebuild R ] dev-util/subversion-1.4.6-r1 USE="apache2 berkdb emacs java nls perl python ruby svnserve* -bash-completion -debug -doc -extras -nowebdav -vim-syntax" 0 kB
注意:subversion 依赖于apache 服务,如果系统中没有apache,会自动添加入emerge 列表。
安装好后产生以下主要的文件:
/usr/bin/svnadmin 用于建立一个repository,也就是一个svn版本库服务 /usr/bin/svn svn客户端命令行程序 /etc/init.d/svnserve svn后台服务程序 /etc/conf.d/svnserve svn服务配置文件
配置
默认的配置文件使用/var/svn 作为repository 的根目录,不做修改。
使用root 建立/var/svn 目录,然后建立独立的repository目录: prj。
# mkdir /var/svn # mkdir /var/svn/prj
现在使用前面创建的路径建立一个repository。
# svnadmin create /var/svn/prj
这会生成一些目录结构与文件在/var/svn/prj 下面,编辑配置文件/var/svn/prj/conf/passwd,加入svn 授权连接用户与密码。
myusername - mypassword
接下来编辑repository配置文件/var/svn/prj/conf/svnserve.conf,去除掉以下行的注释:
anon-access = read auth-access = write password-db = passwd
注意:行首不要留有空格。
下面还需要给svn root 目录/var/svn 以及下面的repository 正确的授权,以使以apache用户运行的svnserver 能够正确的存取它们。执行以下命令:# chown -R apache:root /var/svn
现在repository 已经准备好了,可以启动svn 服务,并设置为跟随系统自动启动。
# /etc/init.d/svnserve start # rc-update add svnserve default
至此,svn server已经在运行,并且为一个叫做prj的项目建立了一个repository,同时为这个repository设置了连接用户。
下面我们选择一个路径作为保存working copy 的目录,比如位于$HOME ,进入此目录,并首先将prj 项目check out,执行以下命令:
$ cd $HOME $ svn checkout svn://localhost/prj
第一次执行此命令,svn会提示输入用户名与密码,然后保存在$HOME/.subversion 目录中。以上会在HOME 中目录建立目录$HOME/prj ,并包含$HOME/prj/.svn 用于保存版本控制的文件。
现在可以向$HOME/prj 中copy 项目文件。使用svn add PATH 命令加入版本控制信息,svn -m "message" commit PATH 命令进行提交。


