快速学会搭建SVN服务器
原文:快速学会搭建SVN服务器
SVN是一个版本控制工具,常用于我们软件开发项目中,用来管理我们团队共同使用的代码,文档等历史版本的管理,保持代码的更新,避免混乱。
需要工具:
svn安装程序:免费下载
apache的http服务器,免费下载
svn的eclipse插件,免费下载
TortoiseSVN图形化工具64位和32位版本,免费下载
安装svn及基本DOS操作:
首先安装svn是非常的简单,就像我们安装其他的windows软件是一样的,安装完成后安装程序自动将我们svn安装目录下的bin目录加载在了我们的环境变量里。所以我们可以直接在我们的cmd窗口内运行我们的svn命令。我们先来学习第一个命令,创建一个svn仓库,我们先在E盘下创建一个目录
E:\\svn\db 这个目录就是我们svn的仓库,我们日后所以上传都svn上的资源其实都是存在这个目录下的,只是格式已经被svn给加密我们无法直接识别,就像是用数据库管理我们数据一样。我们在cmd里输入:
svnadmin create E:\\svn\db
这个就是将我们刚才的目录指定为存储仓库。然后我们运行我们的svn服务在cmd内输入:
svnserve –d –r E:\\svn\db
该命令含义为让 我们的SVN 将此目录作为仓库,并侦听客户端的请求。其中-d 的作用为后台模式,而-r
的作用为指定服务器的仓库路径。现在我们的svn服务器就已经启动成功了,是不是很简单,然后我们开始向我们的svn上上传我们的资源。我们再次打开一个cmd窗口,刚才的cmd窗口不能关闭,在cmd内跳转到我们的资源文件夹内执行:
svn import svn://localhost
这个时候会出现一个错误,命令执行失败,因为我们需要指定打开svn日志信息的工具,这里我们在环境变量里增加一个增加一个键名为SVN_EDITOR
键值为notepad的记录。我们再次运行刚才的命令,这时我们的日志文件自动用记事本打开,我们直接关掉输入c继续操作。再次出现认证失败的信息,这次其实是我们已经这说明我们已经连接到了 SVN 服务器,但是默认是svn服务器是不允许匿名访问的,我们打开我们的E:\svn\db目录改变一下
SVN 的认证权限。用文本编辑器打开 svnserve.conf 文件找到第 12 行:anon-access = read,这表示匿名用户的访问权限是读,并且大家注意到,该行前面有一个警号:#。这表示该行是被注释掉的。我们将注释去掉,并且加上一行anon-access = write。我们打开一个cmd开启svn服务再开启一个cmd执行上面的上传操作,是不是操作成了,我们所在文件夹目录下的文件是不是都上传了上去。
这样大家是不是觉得svn上的管理太乱了,没关系svn是支持虚拟目录的
svn mkdir svn://localhost/xunimulu
这样便可以帮助我们在svn上创建一个虚拟的文件夹。我们如果想将svn上的文件下载下来如何?在svn的操作中这个叫做检出。checkout命令(检出):将命令行当前目录转到该目录,输入如下命令:
svn checkout svn://localhost/xunimulu
这样就可以将这个文件夹下的资源下载到们的当前目录,如果我们修改文件后,需要与服务器上的文件进行同步,我们需要执行
svn commit test2.txt
如果执行该行出现错误,则我们清除锁定,输入:svn
cleanup
SubVersion的密码验证
匿名访问我们的svn服务器是不是太危险了,我们接下来就是使用svn自带的配置文件来对我们的svn进行权限控制,我们用文本编辑器来打开刚才的
svnserve.conf配置 文件将 password-db = passwd 之前的#号删掉,在用文本编辑器打开passwd 文件加入账号密码形式为username=password
注意:在一次登录后,SVN 会将我们的登录信息保存起来存放在硬盘上的文件中,其存放位置为: C:\Documents and Settings\[你的登录系统用户名] \Application Data\Subversion,如果想要删除该信息,只需要将该目录中的 auth 文件夹删除即可。
图形化工具安装
刚才的dos操作是不是很不方便,我们的下载软件中包括一个图形化工具,非常简单实用,大家可以安装上用一下,安装非常简单。安装完成后我们的右键菜单中多出了很多svn的操作。还是以上的功能,只是变成了图形化界面操作,大家可以自己体验一下,在此不再赘余。
整合apache服务器
刚才大家肯定也注意到我们的svn服务器只能一直依托一个cmd窗口,这样是不是很不方便,接下来我们让我们的svn来整合apache的httpd服务器,首先安装apache
的http服务器。它的默认端口号是80如果有端口号冲突,我们的服务器是无法正常启动的,只需要修改配置文件更改端口号重启即可。安装完成后在浏览器输入:http://localhost如果跳转到apache的网页则说明安装成功。然后我们开始进行整合,首先到svn安装目录的bin目录下找到
mod_authz_svn.so 与 mod_dav_svn.so 两个文件,拷贝到 Apache 的安装目录下的modules 子目录中。然后修改apache的配置文件,打开apache安装目录下的,conf 目录,用文本编辑器打开 httpd.conf 文件(这个文件是 Apache 的配置文件,非常重要)找到第 145 行和 146 行。将前面的#号去掉,不能有空格,然后再增加如下两行内容:
LoadModule dav_svn_module modules/mod_dav_svn.so
LoadModule authz_svn_module modules/mod_authz_svn.so
表示将我们之前拷贝的模块导入到 Apache 中,转到该文件的最后,增加如下内容:
<Location /svn>
DAV svn
SVNParentPath e:\\svn\db #svn仓库主目录
</Location>
重新启动 Apache,在浏览器中输入如下地址:http://localhost/svn我们就已经将svn跟apache服务整合成功,这样我们只需要启动apache服务器就相当于启动了我们的svn服务器。
整合apache密码设置
svn的密码认证也是非常的弱,在这里我们也与apache整合,我们将刚才的apache配置文件最后加的内容修改为一下内容:
<Location /svn>
DAV svn
SVNParentPath e:\\svn\db #svn仓库主目录
AuthType Basic
AuthName "Subversion test"
AuthUserFileE:/passwd/passwords
Require valid-user
</Location>
这些信息的内容分别是:
AuthType 表示验证类型,这里我们采用 BASIC 即基本方式,也是最常用的验证方式。AuthName
表示出现登录对话框时,窗口的标题名。AuthUserFile 表示用户登录信息的存放文件,这里我们将该文件保存为 E:/passwd/passwords,目前该文件还不存在,不过不要着急,我们稍后就会创建该文件。#保存用户名和密码,这个文件需要用Apache的htpasswd工具创建。Require
valid-user 表示只有认证的用户才能访问,否则匿名用户也可以访问。首先创建E:/passwd文件夹
打开cmd命令跳转到apache的安装目录下的bin目录下执行htpasswd –c E:/passwd/passwords
hello (hello是用户名)接下来的提示要求输入 hello 用户的密码,其中密码默认使用 MD5 方式加密。
现在我们再创建一个用户 google,密码也为 world。方式同前。在命令行输入:htpasswd
E:\passwd\passwords google因为该用户信息文件之前已经创建好,所以这里不必再使用-c 参数
在浏览器地址栏输入http://localhost/svn则需要密码验证
SubVersion 整合 Eclipse
我们只需要将我们的插件包放到eclipse的dorpin目录下重启eclipse即可。
友情提示:转载请注明出处【作者:idlear
博客:http://blog.csdn.net/idlear】
快速学会搭建SVN服务器的更多相关文章
- 【SVN】CentOS7.0下搭建SVN服务器
SVN服务器搭建 最近接手了天赋吉运的SVN项目管理,那么学会搭建SVN服务器就成为了必须的技能.这篇文章就来讲一讲在CentOS7.0下如何搭建SVN服务器 1,下载安装SVN版本 yum inst ...
- Ubuntu 14.04快速搭建SVN服务器及日常使用【转】
转自:http://www.linuxidc.com/Linux/2015-05/117735.htm 1.介绍 Subversion是一个自由,开源的版本控制系统,这个版本库就像一个普通的文件服务 ...
- Ubuntu 14.04快速搭建SVN服务器及日常使用
1.介绍 Subversion是一个自由,开源的版本控制系统,这个版本库就像一个普通的文件服务器,不同的是,它可以记录每一次文件和目录的修改情况.这样就可以很方面恢复到以前的版本,并可以查看数据更改 ...
- centos7 搭建svn服务器&客户端的访问&备份迁移
当今用于版本控制的软件程序主要的有svn和git,其它软件咱不熟悉,今天记录下搭建svn服务器和svn客户端使用: 使用环境:虚拟机为centos7系统,svn服务器安装在centos7系统平台上,s ...
- [源码管理] Windows下搭建SVN服务器
前文所述SVN客户端使用的时候,用的SVN服务器通常为外部,例如Google Code的服务器,不过,做为一个程序开发人员,就算自己一个人写程序,也应该有一个SVN版本控制系统,以便对开发代码进行有效 ...
- 如何搭建SVN服务器,详细安装步骤。
SVN服务器端安装 下载: VisualSVN是一款图形化svn服务器.官网 http://www.visualsvn.com/server/ 下载地址: http://www.visualsvn.c ...
- CentOS 7搭建SVN服务器
安装步骤如下: 1.yum install subversion 2.查看安装版本 svnserve --version 3.创建SVN版本库目录 mkdir -p /var/svn/svnrepos ...
- Linux下搭建SVN服务器及自动更新项目文件到web目录(www)的方法
首先搭建SVN服务器 1,安装SVN服务端 直接用apt-get或yum安装subversion即可(当然也可以自己去官方下载安装) sudo apt-get install subversion ...
- 记录第一次搭建svn服务器
搭建svn服务器需要另外的软件, 在此以32位的为例: 安装过程非常简单, 一直下一步下一步确定就好了, svn安装完毕再安装中文语言包, 安装完成后可以在设置里面找到中文简体选择就OK了 主要记录一 ...
随机推荐
- 【linux驱动笔记】linux模块机制浅析
1. 模块module 操作系统分微内核和宏内核,微内核优点,可以使操作系统仅作很少的事,其它事情如网络处理等都作为应用程序来实现,微内核精简的同时,必然带来性能的下降.而linux的宏内核设 ...
- Java基础08 继承
作者:Vamei 出处:http://www.cnblogs.com/vamei 欢迎转载,也请保留这段声明.谢谢! 继承(inheritance)是面向对象的重要概念.继承是除组合(composit ...
- 基于visual Studio2013解决面试题之1306奇偶位数交换
题目
- Android实时获取音量(单位:分贝)
基础知识 度量声音强度,大家最熟悉的单位就是分贝(decibel,缩写为dB).这是一个无纲量的相对单位,计算公式如下: 分子是测量值的声压,分母是参考值的声压(20微帕,人类所能听到的最小声压).因 ...
- HTML+CSS - 搜索 And 高级搜索
- 1.1-学习Opencv与MFC混合编程之---利用画图函数,生成视频,并写入视频文件
源代码地址:http://download.csdn.net/detail/nuptboyzhb/3961674 写视频文件 Ø 新建菜单项,Learning OpenCV——> OpenCVr ...
- 引用iscroll的一个封装方法
var Page = function(cid, data,callback) { var _self = this; var cid = $(cid); var currPage=1; // 下拉上 ...
- HDU 4350 Card
打表找规律,比赛应付了一下,其实还可以把内存再优化一半掉,下面的0都是手动填充的,可以优化掉 题意: T个测试数据 下面52个数字表示 从栈顶到栈底的52个数 n l r表示 从栈顶下数 [l,r] ...
- JQuery+AJax - 无刷新使用验证码
最终效果: 项目目录: Default.aspx前端代码: <%@ Page Language="C#" AutoEventWireup="true" C ...
- 使用JDBC进行数据库的事务操作(2)
本篇将讲诉如何使用JDBC进行数据库有关事务的操作.在上一篇博客中已经介绍了事务的概念,和在MySQL命令行窗口进行开启事务,提交事务以及回滚事务的操作. 似乎事务和批处理都可以一次同时执行多条SQL ...