原文地址:http://developer.51cto.com/art/201005/199628.htm

本文介绍Subversion安装配置快速指南,首先讲Subversion的安装和配置,Unix/Linux下一般已安装或者使用软件包管理机制安装,非常方便,而配置过程基本是一样的,在这里我 们只讲Windows平台下的安装。

一、首先下载所需的软件:

Subversion: http://subversion.tigris.org/
Windows下的客户端TortoiseSVN: http://tortoisesvn.tigris.org/

二、安装软件

Subversion安装配置时直接双击运行安装,先装Subversion官方文件,安装完成后会自动添加%Subversion%\bin到Path环境变量中。也就是说你现在已经可以在命令行中使用Subversion了。进入CMD,输入svn
--version,看一下运行效果。

接着安装TortoiseSVN客户端,这是一个非常方便,易于使用的客户端。一路Next下去安装完成,然后会问你是否重启,重启是为了让TortoiseSVN的工作目录样式生效,选择重启就可以了。

三、创建Repository

创建Repository,也就是版本库,我选择的路径是E:\svnRoot,命令行:svnadmin create E:\svnRoot
这样就在E:\svnRoot创建了版本库,SVN在该目录下创建了许多文件,我们最好不要手动编辑或里面的数据文件,当然conf目录下的配置文件除外。关于版本库以及我们的项目组织,后面我还会讲到。

四、选择Subversion的网络协议

在Subversion安装配置中Subversion服务器支持多种网络协议。最直接的file:///可以在本机以及网络驱动器
上使用,然后还提供了svn, svn +
ssh以及http访问方式。到底选择哪一个要根据情况进行选择,功能越强大的协议,你需要付出的管理也越多。所以对于我们来说,Subversion自
已的svn协议就够了。当然,你可以在任何时候改变Subversion服务器使用的协议,甚至你可以同时使用不同的协议。

五、配置用户和权限

Subversion使用文件来配置用户以及权限,在E:/svnRoot/conf/目录下打开svnserve.conf和passwd文件svnserve.conf,删除下面行前面的#号注释:

[general]
anon-access = read
auth-access = write
password-db = passwd
passwd中配置用户和密码
[users]
jkzqw = 123456

含义是:

未验证用户无任何权限(如果把none修改为read就是给予读权限)

已验证用户给予写权限(当然也能读)

密码数据存放到passwd文件中

【注意】anon-access=none这条必须显示写出来,否则会有一个默认权限,别人可能不用登陆就能看到你的项目!

然后打开同目录的passwd文件来设置帐户:

同样,设置[users]小节中行前没有#号的内容,例如:

admin=zhang

含义是:

用户admin的密码为zhang

该目录下还有一个authz的文件,用来针对不同的目录给用户分配不同的权限。

六、启动Subversion服务器

我们选择的是svn访问协议,使用下面命令即可启动SVN服务器
svnserver -d -r E:\svnRoot

七、初始导入项目

假设我们有一个HelloWorld项目,在E:\work\HelloWorld目录下,在CMD中进入到E:\work\HelloWorld,输入下面命令导入项目到版本库中:
E:\work\HelloWorld
> svn import -m "initial import project HelloWorld"
,svn://localhost/HelloWorld/trunk,svn会首先尝试使用系统用户名,如果你配置的用户名不一样,就直接忽略回车,然后输入你的用户名和密码

注意这里我们把HelloWorld目录下的所以文件以及子目录(不包括HelloWorld目录本身)导入到 svn://localhost
/HelloWorld/trunk路径下,这里我们遵循的是Subversion推荐的项目路径,trunk作为项目开发的主线,以后会相继创建
branches和tags作为分支和标签记录。现在你可以删除HelloWorld目录了,因为SVN已经给我们保存了项目。

八、使用Subversion管理项目

项目导入以后,我们的开发步骤就变成了:首先签出项目,对项目进行修改,(运行测试通过),最后提交修改。
首先checkout项目E:\work > svn checkout svn://localhost/HelloWorld/trunk HelloWorld
这样就把项目所有文件都签出到了HelloWorld目录下,接下来你就需要对项目进行开发修改

最后提交修改
E:\work\HelloWorld > svn commit -m "fix bug 3012"
这样你的修改就提交到了版本库中,SVN对自动对修订版本号进行修改。注意如果你在项目中新增或者删除了文件或目录,则需要相应使用svn add或者svn delete命令进行操作,最后再使用svn commit一次提交上去

九、配置svnserver作为系统服务

你可能想将svnserver配置为系统服务,以便开机便可以自动启动svnserver服务,不用每次都这么麻烦手动启动。最新的Subversion可以使用简单的命令来创建Windows服务了,CMD输入下面命令:
sc
create svnserve binpath= "E:\Subversion\bin\svnserve.exe --service -r
E:\svnRoot" start= auto displayname= "Subversion Server" depend= Tcpip

注意上面命令需要一次输入,中间不要回车,而且" =
"号后面必须有一个空格,另外请根据你自己的安装路径以及版本库修改命令。直接使用svn命令操作Subversion很麻烦,所以就有了易于使用TortoiseSVN客户端,在Windows下使用相当方便,只需要鼠标点击几下就可以完成很多操作,到这里Subversion安装配置基本完成。

【转】Windows平台下的Subversion安装配置新手指南的更多相关文章

  1. Windows 平台下 LiteIDE 的安装和使用

    1. 安装 Go 语言并设置环境变量 参考博客<Windows 平台下 Go 语言的安装和环境变量设置>. 2. MinGW 的下载和安装 Windows 下的 Go 调试还需要安装 Mi ...

  2. 【原创】Windows平台下Git的安装与配置

    一.下载     msysgit是Git for Windows版,其Home Page为:http://msysgit.github.io/ 点击页面中“Download”进入下载列表.可根据个人喜 ...

  3. Windows平台下Java,tomcat安装与环境配置

    问题描述:在Windows下面做Java web相关的项目的时候,Java和tomcat是基础,这里记载一下Java环境的配置以及tomcat的安装和配置. 使用工具:Windows.jdk安装包.t ...

  4. Windows平台下nginx跨域配置

    1)下载地址: http://nginx.org 2)启动 解压至d:\nginx,运行nginx.exe(即nginx -c conf\nginx.conf),默认使用80端口,日志见文件夹D:\n ...

  5. GO语言学习(二)Windows 平台下 LiteIDE 的安装和使用

    1. 安装 Go 语言并设置环境变量 参考GO语言学习(一) 2. MinGW 的下载和安装 Windows 下的 Go 调试还需要安装 MinGW. 2.1 下载安装工具的安装 最新版本下载安装工具 ...

  6. windows平台下MySQl的安装、破解和使用

    #1.下载:MySQL Community Server 5.7.16 http://dev.mysql.com/downloads/mysql/ #2.解压 如果想要让MySQL安装在指定目录,那么 ...

  7. Windows平台下gitbook的安装与使用

    最近要用到gitbook去阅读电子书,整理了一份在windows系统下安装gitbook的过程. * 安装nodejs * 安装cnpm * 搭建gitbook平台 1.在windows上安装node ...

  8. windows平台下node,npm,gulp配置

    参考文献:http://blog.csdn.net/yuanyuan214365/article/details/53749583 1.安装nodejs:nodejs nodejs安装路径随意 nod ...

  9. Windows平台下PHP开发环境的配置

    Windows平台下PHP开发环境的配置 一.基本环境 1.Windows XP 32位 2.Apache 2.2.25,下载地址:http://mirror.bit.edu.cn/apache/ht ...

随机推荐

  1. Devexress XPO xpPageSelector 使用

    在官网找到的.在这里做个备注. private void simpleButton1_Click(object sender, EventArgs e) { ) return; xpPageSelec ...

  2. C# Linq排序

    今天在家看了一下linq,实践了一下书中代码,发现排序和查重的先后顺序太重要了. using System; using System.Collections.Generic; using Syste ...

  3. php中实现的一个curl批处理的实例

    curl是利用URL语法在命令行方式下工作的开源文件传输工具 本文在php中实现了的一个curl批处理的实例. 代码如下: header("Content-Type:text/html;ch ...

  4. enote笔记语言(1)

    what                 是什么 why                  为什么 when                何时 where               在哪里 whi ...

  5. 《连载 | 物联网框架ServerSuperIO教程》- 10.持续传输大块数据流的两种方式(如:文件)

    1.C#跨平台物联网通讯框架ServerSuperIO(SSIO)介绍 <连载 | 物联网框架ServerSuperIO教程>1.4种通讯模式机制. <连载 | 物联网框架Serve ...

  6. javaScript之BOM操作2

    <!doctype html> <html lang="en"> <head> <title>Document</title& ...

  7. 什么是IIFE

    立即执行函数表达式(Immediately-invoked function expression) IIFE 我们知道,在javascript(ES5)中,是没有块级作用域的概念的.看一个例子 fo ...

  8. Mysql(windows)安装

    h3 { color: rgb(255, 255, 255); background-color: rgb(30,144,255); padding: 3px; margin: 10px 0px } ...

  9. JavaScript简单分页,兼容IE6,~3KB

    简介 兼容IE6+及现代浏览器的简单分页,支持同一页面多个分页. 使用 Browser <link rel="stylesheet" href="css/GB-pa ...

  10. ArcGIS Engine开发之鹰眼视图

    鹰眼是GIS软件的必备功能之一.它是一个MapControl控件,主要用来表示数据视图中的地理范围在全图中的位置. 鹰眼一般具有的功能: 1)鹰眼视图与数据视图的地理范围保持同步. 2)数据视图的当前 ...