SVN安装配置过程说明文档

SVN配置过程说明文档

1         安装独立服务器SVNServer

1.1         获取Subversion服务器程序

到官方网站(http://subversion.tigris.org/)下载最新的服务器安装程序。目前最新的是1.4.6版本,具体下载地址在:http://subversion.tigris.org/servlets/ProjectDocumentList?folderID=8100&expandFolder=8100&folderID=91,注意找 for apache 2.2.x 版本的。

这里我已经为了方便,已经上传到如下空间,可以到这里直接下载:

http://dl.dbank.com/c0ezh34xs5

1.2         获取TortoiseSVN客户端程序

从官方网站 http://tortoisesvn.net/downloads 获取最新的 TortoiseSVN 。TortoiseSVN 是一个客户端程序,用来与 subvers 服务器端通讯。Subversion自带一个客户端程序 svn.exe ,但 TortoiseSVN 更好操作,提高效率。

这里我同样上传到如下空间,可以下述网址直接下载:

http://download.csdn.net/source/3447907

http://dl.dbank.com/c0b5oipgsa

2         安装服务器端和客户端

首先确认已经安装了Apache。

其次安装Subversion(以下简称SVN)的服务器端和客户端。将下载下来的两个软件包直接安装即可。先安装服务器端的svnsetup.exe,然后再安装客户端程序。其中TortoiseSVN压缩包中先安装TortoiseSVN-1.6.5.16974-win32-svn-1.6.5.msi软件,然后再安装LanguagePack_1.6.5.16974-win32-zh_CN.msi语言包。注意客户端安装后需要重新启动。

3         建立版本库

运行Subversion服务器需要首先要建立一个版本库(Repository)。版本库可以看作是服务器上集中存放和管理数据的地方。

开始建立版本库。首先建立D:\svn 空文件夹作为所有版本库的根目录。然后,进入命令行并切换到subversion的bin目录。输入如下命令:

svnadmin createE:\svn\repos1

此命令在 E:\svn 下建立一个版本库 repos1 。repos1 下面会自动生成一些文件夹和文件。

我们也可以使用TortoiseSVN 图形化的完成这一步:

先建立空目录E:\svn\repos1 ,注意一定是要空的。然后在 repos1 文件夹上“右键->TortoiseSVN->Create Repository here...”,然后可以选择版本库模式,这里使用默认的FSFS即可,然后就创建了一系列文件夹和文件,同命令行建立的一样。

4         运行独立服务器

此时 subversion 服务还没有开始,只是通过它的命令建立了版本库。继续在刚才的命令窗口输入:

svnserve.exe--daemon

svnserve 将会在端口 3690 等待请求,--daemon(两个短横线)选项告诉 svnserve 以守护进程方式运行,这样在手动终止之前不会退出。注意不要关闭命令行窗口,关闭窗口会把 svnserve 停止。

为了验证svnserve正常工作,使用TortoiseSVN -> Repo-browser 来查看版本库。在弹出的 URL 对话框中输入:

svn://localhost/svn/repos1

点 OK 按钮后就可以看见 repos1 版本库的目录树结构了,只不过这时repos1 是个空库。

你也可以使用--root选项设置根位置来限制服务器的访问目录,从而增加安全性和节约输入svnserve URL的时间:

svnserve.exe--daemon --root drive:\path\to\repository

以前面的测试作为例,svnserve将会运行为:

svnserve.exe--daemon --root e:\svn

然后TortoiseSVN中的版本库浏览器URL缩减为:

svn://localhost/repos1

5         配置用户权限

用文本编辑器打开E:\svn\repos1\conf目录,修改svnserve.conf:

将:

# password-db =passwd

改为:

password-db =passwd

即去掉前面的 # 注释符,注意前面不能有空格。

然后修改同目录的passwd文件,增加一个帐号:

将:

[users]

# harry =harryssecret

# sally =sallyssecret

增加帐号:

[users]

#harry =harryssecret

#sally =sallyssecret

test = test

6         初始化导入数据

下面就是将我们的数据(项目)导入到这个版本库,以后就由版本库管理我们的数据。我们的任何改动都回被版本库记录下来,甚至我们自己丢失、改错数据时版本库也能帮我们找回数据。

比如,我在 D:\wwwroot下有个 flower 文件夹,里面存放的是我编写的留言簿程序。在此文件夹上“右键 -> TortoiseSVN -> Import...” ,在弹出对话框的“URL of repository”输入“svn://localhost/repos1”。在“Import message”输入“初始化数据导入”作为注释。

点 OK 后要求输入帐号。我们在用户名和密码处都输入 test 。完成后 flower 中的内容全部导入到了 svn://localhost/svn/repos1。

我们看到在e:\svn\repos1 没有任何变化,连个 guestbook 文件夹都没有建立,唯一的变化就是e:\svn\repos1容量变大了。实际上我们源guestbook中的内容已经导入 repos1 版本库了,源 flower 文件夹可以删除了。

需要注意的是,这一步操作可以完全在另一台安装了 TortoiseSVN 的客户机上进行。例如运行svnserve的主机的IP是172.17.21.240,则URL部分输入的内容就是“svn://172.17.21.240”。

7         基本操作流程

7.1         取出(check out)、

取出版本库到一个工作拷贝:

来到任意空目录下,比如在f分区建立一个空文件夹 f:\work。“右键 -> SVNCheckout”。在“URL of repository”中输入“svn://localhost/svn/repos1”,这样我们就得到了一份 flower 中内容的工作拷贝。

如果是要在客户端建立的话,那就直接在你需要建立的工作间建立一个文件夹,之后“右键 -> SVN Checkout”。在“URL ofrepository”中输入“svn://localhost/svn/repos1”,这样我们就得到了一份 flower 中内容的工作拷贝。

7.2         存入(check in)/提交(commit)

在工作拷贝中作出修改并提交:

在flower工作拷贝中随便打开一个文件,作出修改,然后“右键 -> SVN Commit... ”。这样我们就把修改提交到了版本库,版本库根据情况存储我们提交的数据。

在修改过的文件上“右键-> TortoiseSVN -> Show Log” ,可以看到对这个文件所有的提交。在不同的 revision 条目上“右键 ->Compare with working copy”,我们可以比较工作拷贝的文件和所选 revision 版本的区别。

7.3         导出(Export )

我们想要给客户一个项目,当然不能带版本信息,我们可以用TortoiseSVN菜单里的Export来实现,新建一个文件夹,右击文件夹TortoiseSVN菜单里选择Export…

 

 

 

下面附带的是几个常见的配置问题:

1.创建版本库

选好想要将版本库放在哪里,比如说本例中把版本库放到D:/SVN/repo文件夹里,现在我们可以右击这个文件夹,然后在ToriseSVN的弹出菜单里选择Createrepository here,

等一会后就会弹出对话框表示创建成功,默认的是FSFS的格式。

 

 

2.将 svnserve 作为 windows 服务运行。从 Subversion 1.4 开始,svnserve 可以安装为 windows 服务。

在命令提示符运行如下命令:

sc create svnserve binpath="C:/Program Files/Subversion/bin/svnserve.exe --service --rootD:/SVN/repo" displayname= "Subversion" depend= tcpip start= auto

 

3.svnserve的认证

默认情况下,svnserve只提供匿名用户读访问的权限,也就是说你只能从版本库中checkout和update工作拷贝,但是无法commit对工作拷贝任何更改,为了更好的使用和管理SVN,我们给SVN加入用户验证。

修改senserver.conf后为:

anon-access = write     表示匿名用户有写的权限

 

4.SVN的访问

svn://     通过未认证的 TCP/IP 自定义协议访问 svnserve服务器。

由于我们在运行svnserve的时候已经将根目录定位到repo文件夹了,所以使用svn://访问时直接输入svn://localhost/ 即可访问到,如果不加上那个--root选项的话那么地址就必须是svn://localhost/repo。如果是从其他计算机访问,只需要将localhost改成SVN服务器机器的IP地址即可。

 

5.首次导入(import)

我们建立一个import文件夹,里面有三个目录,分别是design,release,trunk,右击import文件夹,可以点import选项,进行导入,导入之后就可以删除该文件夹了。

 

6.首次检出(checkout)

需要将版本库的代码检出(checkout)到一个文件夹,就得到了一份工作拷贝,可以对工作拷贝进行修改。可以使用Checkout命令。注意,不要检出到刚才用于导入(import)的文件夹,否则文件的覆盖会出现错误,如果确实很需要,就先删除原文件夹中的所有内容,然后检出(checkout)。

具体操作是在你想的获得开发源码的地方比如说本例在E:/workspace,在此文件夹里右击,在弹出菜单中选择SVN Checkout…,弹出如下界面(图3-3-1),因为我们只需要开发代码所以地址要定位到trunk文件夹,其他的默认即可,点击OK。

 

7.提交修改(Commit)

红色的小叹号表明文件已经做了修改。

 

8.回退(Update to reversion)

这个情况是很容易发生的,那就是当大家修改了代码之后,发现程序有很大漏洞,而且及其难改,这个时候就可以将你的项目回退到以前的版本,具体操作是:右击想要回退的文件夹或者文件,在TortoiseSVN弹出菜单中选择Update toreversion…然后回弹出一个界面,比如说我们想要回退到第10个版本只需要在Revision中填写相应的版本号,然后点击OK即可。

 

9.Branch and Tag

当我们开发到一定程度,感觉这个版本已经做够成熟了,已经可以拿来发布了,我们可以将这个版本当做一个备份保留起来这样以后修改,出了大问题可以立刻拿这里面的版本来用。操作方法是:首先从版本库中将trunk中的项目checkout到一个文件夹里,然后右击checkout下来的这个文件夹,TortoiseSVN弹出菜单中选择Branch and Tag…,

在To URL里填好路径,既然是可以发布的版本,我们就把它放到release文件夹里的V1.0文件夹里吧,如果没有这个文件夹会自动创建的。然后在下面的Log窗口里写上日志,点击OK即可。然后我们可以使用TortoiseSVN里的RepositoryBrower来看看是否加入了。

 

10.查看所有版本(show log)

进入checkout的目录,可以右击"show log"查看所有版本。

 

11.导出(Export )

我们想要给客户一个项目,当然不能带版本信息,我们可以用TortoiseSVN菜单里的Export来实现,新建一个文件夹,右击文件夹TortoiseSVN菜单里选择Export…


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值