svn在windows与linux下的安装方法
时间:2014-09-15 03:16 来源:linux.it.net.cn 作者:it
一、windows的svn仓库安装配置
方法一,下载到windows下的安装包:Subversion,tortoiseSVN,apach,下载地 址:http://subversion.tigris.org/servlets/ProjectDocumentList?folderID=91,
http://www.apachelounge.com /download/,安装方法跟linux下就差不多。
此方法的缺点:apache的版本和subversion的版本问题,apache的某个版本不定支持某个版本svnsubversion。
方法二,直接在 http://www.collab.net/downloads/subversion/下载一个集合subversion和apache的安装 包:CollabNetSubversion-server-1.5.1-5.win32.exe,双击安装。
二、linux下的svn仓库安装配置
1、下载所需要的安装包:httpd-2.2.9.tar.gz,subversion-1.4.3.tar.bz2,subversion-deps-1.4.3.tar.bz2
下载路径:http://subversion.tigris.org/,http://httpd.apache.org/
2、安装Apache
复制代码代码示例:
# tar zxf httpd-2.2.9.tar.gz
# ./configure --prefix=/opt/apache --enable-dav --enable-so && make && make install
这里的/opt/apache替成你自己的安装目录。
3、安装Subversion
注意:svn依赖的APR版本要正确。如果Apache为2.0.x,对应的APR版本应为0.9.x;Apache为2.2.x,对 应的APR版本应为1.2.x。
由于subversion-deps包里的APR是0.9.x的,因此编译svn时要删除从deps里解压出来的apr, apr-util,改而使用apache 2.2里提供的。
命令如下:
复制代码代码示例:
# tar xfz subversion-1.4.3.tar.bz2
# tar xfz subversion-deps-1.4.3.tar.bz2
./configure --prefix=/opt/subversion --with-apxs=/opt/apache/bin/apxs --with-apr=/opt/httpd-2.2.13/srclib/apr --with-apr-util=/opt/httpd-2.2.13/srclib/apr-util &&
make && make install
注意:
此处的三个路径一定要替换成自己包的路径,下面的apr的路径/home/tang/指到apache的源安装文件路径。
安装完成后,查看是否存在文件$APACHE_HOME/modules/mod_dav_svn.so(默认 /usr/local/apache2/modules/mod_dav_svn.so)。另外,如果该机器上以前是装过旧版本的SVN,要把"/usr/local/lib/libsvn*"文件都删除。
4、在apache中配置svn
创建SVN库:
复制代码代码示例:
cd /opt/subversion
svnadmin create /opt/svnroot
说明:默认版本为0,命令可以使用—fs-type参数指定仓库后台的数据库类型,默认为fsfs,可以修改为dbd,一般使用默认的fsfs即可,差别是如果应用了nfs的话会有文件读写的影响,一般不会涉及到。
可以用svnserve –d –r /path/to/repos启动服务,默认只支持以svn协议访问,可以用来测试是否初始化成功,/opt/svnroot表示仓库的路径。
创建后需要改变一下svnroot下db和dav的权限。
复制代码代码示例:
# chmod 777 svnroot/db
# chmod 777 svnroot/dav
# chown -R apache:apache svnroot
在Apache 的配置文件httpd.conf中加入以下代码,重启apache,便可以通过http://192.168.0.1/svn(如果默认端口是80可如些 访问,如果有需要可以修改apache的端口号),通过
AuthzSVNAccessFile和AuthUserFile指令分别配置SVN用户的用户名 和密码文件。
httpd.conf文件添加:
复制代码代码示例:
<Location /svn>
DAV svn
SVNParentPath /opt/svnroot
AuthzSVNAccessFile /opt/svnroot/conf/accessfile
Require valid-user
AuthType Basic
AuthName "Subversion System"
AuthUserFile /opt/svnroot/conf/passwdfile
</Location>
注意:
SVNParentPath是对多个项目进行管理,设置单个项目管理使用SVNPath就可以了。
在多个项目配置环境中访问路径后面必须接项目名称例:http://svnserverip:port/svn/projectname,否则将会出现错误。
创建文件/opt/svnroot/conf/accessfile:
复制代码代码示例:
[groups]
user = admin
anonymous = guest
[/]
* = r
@user = rw
@anonymous = r
使用htpasswd命令创建/home/svn/svnroot/conf/passwdfile文件,设置密码
注意选项中有c时会创建新文件,如果原来已存在同名文件,会被覆盖:
复制代码代码示例:
# htpasswd -cm /home/svn/svnroot/conf/passwdfile admin
如果 passwdfile文件已存在,运行下面的命令追加用户
复制代码代码示例:
htpasswd –m svn-auth-file username2为username2
系统会提示输入两遍密码,设置成功后重装apache新帐号生效。
5、导入初始项目目录结构
# svn import -m "项目说明" /opt/project1
项目导入到svn仓库以后,项目将由svn仓库接管,可以将/opt/project1文件备份后删除,然后从svn仓库中将project1 checout出来,例:
# svn checkout http://svnserverip:port/svn/project1
一般svn仓库中项目的布局如下:
project1/
trunk/
tags/
branches/
project2/
trunk/
tags/
branches/
每个项目一个目录,下面的trunk目录为项目主干版本,tags为打了标签的某个版本,一般只读,branches为分支版本,svn对tags的处理是和branches完全一样的,都是主干版本的某个特定版本的一个拷贝。
(责任编辑:IT)
一、windows的svn仓库安装配置
方法一,下载到windows下的安装包:Subversion,tortoiseSVN,apach,下载地 址:http://subversion.tigris.org/servlets/ProjectDocumentList?folderID=91, 此方法的缺点:apache的版本和subversion的版本问题,apache的某个版本不定支持某个版本svnsubversion。 方法二,直接在 http://www.collab.net/downloads/subversion/下载一个集合subversion和apache的安装 包:CollabNetSubversion-server-1.5.1-5.win32.exe,双击安装。
二、linux下的svn仓库安装配置
2、安装Apache
复制代码代码示例:
# tar zxf httpd-2.2.9.tar.gz
# ./configure --prefix=/opt/apache --enable-dav --enable-so && make && make install 这里的/opt/apache替成你自己的安装目录。
3、安装Subversion
复制代码代码示例:
# tar xfz subversion-1.4.3.tar.bz2
# tar xfz subversion-deps-1.4.3.tar.bz2 ./configure --prefix=/opt/subversion --with-apxs=/opt/apache/bin/apxs --with-apr=/opt/httpd-2.2.13/srclib/apr --with-apr-util=/opt/httpd-2.2.13/srclib/apr-util && make && make install
注意:
4、在apache中配置svn
复制代码代码示例:
cd /opt/subversion
svnadmin create /opt/svnroot
说明:默认版本为0,命令可以使用—fs-type参数指定仓库后台的数据库类型,默认为fsfs,可以修改为dbd,一般使用默认的fsfs即可,差别是如果应用了nfs的话会有文件读写的影响,一般不会涉及到。
复制代码代码示例:
# chmod 777 svnroot/db
# chmod 777 svnroot/dav # chown -R apache:apache svnroot
在Apache 的配置文件httpd.conf中加入以下代码,重启apache,便可以通过http://192.168.0.1/svn(如果默认端口是80可如些 访问,如果有需要可以修改apache的端口号),通过
httpd.conf文件添加:
复制代码代码示例:
<Location /svn>
DAV svn SVNParentPath /opt/svnroot AuthzSVNAccessFile /opt/svnroot/conf/accessfile Require valid-user AuthType Basic AuthName "Subversion System" AuthUserFile /opt/svnroot/conf/passwdfile </Location>
注意:
复制代码代码示例:
[groups]
user = admin anonymous = guest [/] * = r @user = rw @anonymous = r
使用htpasswd命令创建/home/svn/svnroot/conf/passwdfile文件,设置密码
复制代码代码示例:
# htpasswd -cm /home/svn/svnroot/conf/passwdfile admin
如果 passwdfile文件已存在,运行下面的命令追加用户
复制代码代码示例:
htpasswd –m svn-auth-file username2为username2
系统会提示输入两遍密码,设置成功后重装apache新帐号生效。
5、导入初始项目目录结构
project1/
trunk/ tags/ branches/ project2/ trunk/ tags/ branches/ 每个项目一个目录,下面的trunk目录为项目主干版本,tags为打了标签的某个版本,一般只读,branches为分支版本,svn对tags的处理是和branches完全一样的,都是主干版本的某个特定版本的一个拷贝。 (责任编辑:IT) |