环境和软件准备
操作系统: windowsXP sp2
Window-Subvsersion : http://subversion.tigris.org/servlets/ProjectDocumentList?folderID=91
Windows 常用客户端 TortoiseSVN : http://tortoisesvn.net/downloads
请下载 subversion 服务器软件和客户端,并默认安装(可以重新启动操作系统,以更新图标显示)。
2.配置管理
2.1. 创建仓库 (svnadmin)
在硬盘上创建个空目录,作为 SVN 的仓库目录。如: E:\subversion\repository
。下面使用两种方式创建仓库的初时文件结构和存储方式。命令方式和 TortoiseSVN
客户端方式,后面所有文档都采用两种方式说明,其功能完全相同。请根据实际情况选择使用。
命令方式( DOS 下):
# 默认方式,采用 FSFS 方式存储数据,这是推荐方式,管理和迁移相对 bdb 方式简单
svnadmin create E:\subversion\repository
或
svnadmin create –fs-type bdb E:\subversion\repository
TortoiseSVN 客户端
注意在最新版本的 SVN1.4 ,采用本方式有兼容性问题,该客户端现在好想只支持 1.3 版本的 SVN 创建仓库
1.使用 window exporer 或我的电脑,定位到 E:\subversion\repository ,并确保本目录为空。
2.在本目录下,右键菜单中选择“ TortoiseSVN ”- > “ Create repository here… ”
3.在弹出的窗口中选择数据存在文件系统方式,使用默认选取 (FSFS) ,点击确定。
4.检查本目录下是否有生产的系统文件和文件夹,如果有,成功!
2.2. 配置服务
进入仓库目录下的 conf 文件夹。也就是 E:\subversion\repository\conf
里面有 3 个默认的配置文件: authz , passwd , svnserve.conf
svnserve.conf 控制 svnserve 的启动配置选项,可以配置认证和授权方式,典型的配置是设置由 authz 控制授权, passwd 控制认证的方式来控制访问权限。也可以使用匿名方式,但不推荐。
使用 authz 和 passwd 的典型配置:
请特别注意:以下三个配置文件的配置,每行有效配置前不能有空格,不然配置会失败。
服务配置文件 svnserve.conf
……
### 匿名方式不允许访问
anon-access = none
……
### Uncomment the line below to use the default password file.
### 表示访问仓库的认证有文件 passwd 提供的账户确定
password-db = passwd
……
### Uncomment the line below to use the default authorization file.
### 表示认证后的账户访问权限由文件 authz 定义
authz-db = authz
### This option specifies the authentication realm of the repository.
……
认证配置文件 passwd
passwd 文件实际提供访问本仓库的账户管理,文件格式就是 ini 方式的格式
[users]
harry = harryssecret
sally = sallyssecret
user=usersecret
这表示本仓库配置了二个用户及:其中一个用户 harry, 他的访问密码是 harryssecret 。访问密码可以使用明文,也可以使用
htpasswd.exe ( apache 服务器提供的工具方法,安装 apache 服务器后,在其 bin 目录中有该程序文件)进行加密处理。
授权配置文件 authz
该文件负责认证后的用户的权限控制,配置稍微复杂,但其实也就是个 ini 配置文件而已。
典型配置:
# groups 段提供配置组的功能 , 但组成员必须是 passwd 文件中定义的用户才有效。可以对组
# 进行权限控制,所有组成员具有组对应的访问权限。
[groups]
# 表示定义了一个管理组叫 admin_group, 包括 harry 和 sally , admin_group 前千万不能有空格
admin_group= harry, sally
# 下面就是定义具体仓库下目录的访问权限
# 一般对管理员来说都具有整个仓库的读写权限,一般人员对整个敞开具有读取权限,下面
# 就是这样的配置 ,[/] 表示整个仓库的根,组的引用使用 @ ,对应的权限可以是 r,w,rw 或空
[/]
@admin_group = rw
* = r
以上的配置完成后,我吗就可以启动服务器了,下面说明服务器的启动。
注意,以上 authz 和 passwd 文件在管理中因为具体项目的加入和人员的变动会经常的修改,这也是 SVN 管理主要的工作
2.3. 启动服务 (svnserve)
Svn 服务器一般有三种方式, svnserve , apache 和 SSH 。其中常用的有 svnserve 和 apache
方式。本文只以 svnserve 方式讲解。总的来说 svnserve 是最高效的方式,一般应用于内部开发网中使用。 Apache
方式因为可以很好的部署在 internet
上,所以公网使用最方便,但配置稍微相对复杂点点,呵呵~~。三种方式具体的优缺点,请参考本文后面的参考文档。
命令方式( DOS 下):
svnserve –d –r E:\subversion\repository
-d 参数是以独立服务的方式启动
-r 是制订要加载的仓库的物理路径
Windows 系统服务
在 subversion1.4 后的版本,提供了安装为服务的支持
可以参考本文安装: .
SC create svn1.4 binPath= "\"C:\Program
Files\Subversion\bin\svnserve.exe\" --service --root
\"E:\subversion\repository\"" depend= Tcpip start= auto
1. 红色部分: SVN 的安装目录
2. 蓝色部分:仓库根目录
3. 每个参数的格式是:参数名称 = 值。参数名称和 = 间没有空格, = 后必须有空格, SC 的变态特性,完全的 BUG.. 注意就可以了
4. 本命令方式只能用于 svn1.4 以上版本
5. 删除服务: sc delete svn1.4
2.4. 添加项目 (import)
上面的安装配置工作完成后,启动服务,现在进入使用的主题,首先一步是把需要进行版本管控的项目加入到仓库中。在作这个工作前,需要先接受下,
SVN 推荐的项目路径结构。一般推荐是使用一个 trunk 保存项目主干最新版本, breaches 保存以后的多个分支, tags
一般保存发布或阶段性发布的标签版本。如下
Project1/trunk
Project1/breaches
Project1/tags
下面我吗使用该目录结构,加入一个测试的项目 project1 来演示添加项目的过程。
在任意目录建立文件夹 test ,然后在 test 下建立上面推荐的项目目录结构。如下
test/project1/trunk
test/project1/breaches
test/project1/tags
命令方式:
DOS 下定位到 test 的上级目录
svn import test svn://localhost -m "init project1" --username harr y --password=harryssecret
新增 test\project1
新增 test\project1\trunk
新增 test\project1\readme.txt
新增 test\project1\breaches
新增 test\project1\tags
提交后的修订版为 1 。
TortoiseSVN 客户端
1.右键点击 test 目录,选择“ TortoiseSVN ”- > “ Import ”
2.在弹出的操作界面中 URL repository 中输入服务器地址 svn://localhost
3. 在弹出的操作界面中 Import message 下面的文本域输入 init project1
4.点击 OK
5.如果第一次使用,会弹出输入账户的界面,输入对应的用户账户,选择保存,下次使用就不用在输入账户认证信息了。
查看是否添加成功:
1. 使用 window exporer 或我的电脑,定位到 E:\subversion\repository ,并确保本目录为空。
2. 在本目录下,右键菜单中选择“ TortoiseSVN ”- > “ Repo-browser ”
3. 在弹出的输入框中输入 SVN 服务器地址 svn://localhost
4. 在 Repository Browser 窗口中,你可以点击树形结构的仓库目录,查看是否存在你刚才添加的 project1
5. 如果你的用户有足够的权限,你可以在本界面的树目录上使用右键管理你的仓库和项目。
2.5. 工作副本 (checkout)
工程加入到仓库后,下面就可以进入实际的研发使用了,首先是要建立个本地的工作副本,使用 checkout 。
1.在任意开发机上建立工作目录。如: D:\workspace\project1
2.进入具体项目的工作目录,右键菜单中选择“ SVN Checkout ”
3.在 checkout 窗口中:
URL of Repository 是你具体的项目的主干仓库访问地址
如: svn://localhost/project1/trunk
Checkout directory 是你本地副本的地址
如: D:\workspace\project1
其它的使用默认选项,如需要了解具体含义,请查看参考文档
4.点击 OK
2.6. 常用开发操作
以下主要都是在工作副本的开发中的常用操作。
2.6.1. 更新和同步
其它开发人员或在其它工作副本上提交到仓库的最新版本文件,需要更新到你自己的工作副本的操作。使用更新使你的工作副本于服务器仓库代码同步。如
果你更新的文件中本地副本和服务器仓库中的文件都是在同一版本上,本地副本作了修改文件操作后, SVN
没有办法更新,因为它不知道是否该放弃本地的修改,它默认会操作合并的方式,但往往很多时候有些文件是不能简单的自动合并的,所有最好的办法是以仓库的版
本为准进行更新,这就是同步操作。
下面主要说明使用客户端工具 TortoiseSVN 的操作方式,其它客户端工具和命令方式类似。
1. 在需要更新或同步文件上或文件夹内右键点击,选择 SVN update 命令
2. 如果需要同步某个文件或文件夹,需要先删除本地版本,然后在使用 SVN update
2.6.2. 添加和提交
。。。
3.参考文档
1. Svn 安装后的官方文档
2. SVN 中文官方网站: http://www.subversion.org.cn
3. 中文文档: http://www.subversion.org.cn/svnbook/
分享到:
相关推荐
- **服务器端配置**:`SVN-WINDOWS服务器架设和管理 - OpenStudio Weblog - BlogJava.mht` 这个文件可能是一个关于如何在Windows上设置SVN服务器的教程。通常,Windows环境下可以使用VisualSVN Server或其他开源的...
### Windows环境下搭建SVN服务器详解 #### 一、概述 版本控制系统在软件开发过程中扮演着极其重要的角色。Subversion(SVN)作为一款开源的版本控制系统,在团队协作中被广泛采用。本文档将详细介绍如何在Windows...
### Windows环境下搭建SVN服务器详解 #### 一、概述 本文档主要介绍如何在Windows环境中部署SVN(Subversion)版本控制系统服务器。SVN是一种广泛使用的集中式版本控制系统,适用于团队开发项目,能够帮助团队成员...
### SVN独立服务器(Win32环境)架设 #### 一、准备工作 首先,确保拥有以下软件及环境: 1. **SVN服务器软件**:`Setup-Subversion-1.6.13.msi`,版本1.6.13; 2. **SVN客户端软件**:`TortoiseSVN-1.6.12.20536...
Subversion(简称SVN)是一个开源版本控制系统,用于跟踪和管理文件及其历史版本。SVN的核心优势在于能够提供一个集中式的版本库,允许团队成员在共享的工作空间内协作开发,同时确保每次更改都被妥善记录。 #### ...
SVN,全称 Subversion,是一种版本控制系统,用于管理软件项目的源代码和其他文件,记录文件和目录的变更历史,便于团队协作开发。它允许开发者查看历史版本、回滚到旧版本、合并不同分支的修改,并提供了冲突解决...
"SVN架设 提交版本的同时更新网站的方法"这个主题聚焦于如何配置SVN服务器,使得每次提交代码到仓库时,能够自动将更新同步到Web服务器的发布目录。这一功能对于实时部署和持续集成流程至关重要,尤其是对于那些需要...
总之,SVN作为版本控制系统,对于Windows环境下的团队协作和项目管理具有重要作用。它提供了一种高效、安全的方式来管理和跟踪代码变化,有效避免了因文件丢失、版本混乱等问题导致的开发困扰。通过熟练掌握SVN的...
### 关于subversion架设外网apache的教程 ...通过以上步骤,可以在外网环境中成功搭建Apache与Subversion的集成环境,实现远程访问和管理SVN仓库,极大地提高了团队协作的效率和代码管理的安全性。
本文将详细介绍如何在 Windows 系统下搭建 SVN 服务器,并进行基本的操作。 #### 二、安装与配置 SVN 服务端 1. **下载 Subversion:** - 访问 Subversion 的官方网站 [http://subversion.tigris.org/]...
### 架设Apache+SVN服务器步骤 1. **安装依赖**:首先安装Apache(如httpd-2.2.4)、APR(如apr-1.2.12)、APR_Util(如apr-util-1.2.12)以及Subversion(如subversion-1.4.5和subversion-deps-1.4.5)。确保在...
它简化了Subversion版本控制系统在企业的部署和管理。在本文中,我们将深入探讨如何搭建和配置VisualSVN服务器。 首先,下载VisualSVN服务器。你可以通过官方网址http://www.visualsvn.com/visualsvn/download/获取...
VisualSVN服务器是一种基于Windows平台的Subversion(SVN)服务器,它提供了直观的图形用户界面,便于管理和配置。在本文中,我们将详细介绍如何搭建和配置VisualSVN服务器。 首先,你需要从官方网站下载VisualSVN...
首先,GoogleCode可以作为一个免费且稳定的静态资源托管服务,这对于那些不想或者无法架设个人服务器来存储静态资源(如JavaScript库文件)的用户来说非常实用。比如著名的JQuery库文档就托管在GoogleCode上。然而,...
### Git官方文档中文版知识点概览 #### 一、起步 **1.1 关于版本控制** - **本地版本控制系统**:早期版本控制...- 本章讨论了如何在服务器上部署和管理Git仓库,以及如何利用各种协议和技术来支持远程访问和协作。