svn创建用户

一个小项目,需要在自己的pc上创建svn服务,为了简单,没有用Apache,以前只是用过客户端,没有创建过服务端,结果花了一个上午,终于搞定了。svn最主要的功能是用于团队开发时用的,用于处理源码修改的版本控制和并发修改冲突。当然一个人开发的时候没有必要创建。

注:我没有用VisualSVN。

一、软件下载

1、服务器端软件Subversion,我用的是1.6.6版本,Setup-Subversion-1.6.6.msi

2、客户端软件TortoiseSVN 1.6.6

注意:服务器端和库户端的软件版本一定要一致,否则访问不了

二、安装

1、服务器端

下载好服务器端软件后,双击Setup-Subversion-1.6.6.msi运行安装程序,这个没什么好说的,一路Next下去就好了,所以默认安装目录我C:\Program Files\Subversion\。

2、客户端

跟服务器端一样,下载好后双击TortoiseSVN 1.6.6,傻瓜安装。但要确保客户端程序和服务器端程序版本一致。

三、建立本机Repository

Repository 即源码的集中存放处,所有修改后提交的源码就是保存在这里,并在其中记录所有的修改版本,分支版本,版本合并,以及并发修改处理等。比如我把源码库放在D:\svnroot\myproject(注意,确保不能删除),然后在此文件夹上右键,选择TortoiseSVN->Create repository here,创建完后,在这个目录下会自动产生一些目录和文件,如下图:

四、配置

配置只需要配置服务器端。打开目录D:\svnroot\myproject\conf\,要更改的文件有三个:authz, passwd和svnserve.conf

1、authz文件

创建用户组,比如group1,里面有三个用户user1, user2和user3,权限为rw即读写权限。

2、passwd文件,用来修改用户密码

这里三个用户的初始密码都设置为123

3、svnserve.conf文件

需要更改的就是如下几行,把每行前面的注释#拿掉,如下图

改成  

注:realm要指定为我们的源码版本库,在这里为myproject。

五、启动服务器端服务

可以用命令行svnserve.exe -d -r D:\svnroot,回车后没有什么反应,但是不能把命令行窗口关掉,如果关掉服务就终止了。

启动服务后我们可以测试一下,打开一个文件浏览器,右键TortoiseSVN->Repo-browser,当然客户端程序TortoiseSVN要装好。

键入服务器端的Repository地址

 单击OK,如果能看到如下窗口就证明安装配置成功了

这样就可以在客户端用前面配置的三个用户进行访问了,注意在其它机器上访问的时候要把127.0.0.1改成本机IP,关于客户端如何使用这里就不作介绍了。

六、补充

前面我们是用命令行窗口启动svn服务的,窗口不能关闭,这样非常不方便。下面就来讲一下如何将服务放到windows服务中,这样开机后就自动启动。

先下载一个SVNService.exe,并将其copy到C:\Program Files\Subversion\bin\目录下(不拷也可以,但为了方便使用,还是放到这里比较好),然后在命令行窗口并进入到SVNService.exe所在目录,执行如下图

然后我们就可以在Windows Service中看到该服务了,将其改成自动启动,这样每次开机就会自动启动svn service了。

如果哪位有更简洁的方法或发现不当之处,可以给我留言,谢谢。

(完)


TortoiseSVN软件简介 版本控制是管理信息修改的艺术,它一直是程序员最重要的工具,程序员经常会花时间作出小的修改,然后又在某一天取消了这些修改,想象一下一个开发者并行工作的团队 - 或许是同时工作在同一个文件!- 你就会明白为什么一个好的系统需要管理潜在的混乱。 什么是 TortoiseSVNTortoiseSVN 是 Subversion 版本控制系统的一个免费开源客户端,可以超越时间的管理文件和目录。文件保存在中央版本库,除了能记住文件和目录的每次修改以外,版本库非常像普通的文件服务器。你可以将文件恢复到过去的版本,并且可以通过检查历史知道数据做了哪些修改,谁做的修改。这就是为什么许多人将 Subversion 和版本控制系统看作一种“时间机器”。 某些版本控制系统也是软件配置管理(SCM)系统,这种系统经过精巧的设计,专门用来管理源代码树,并且具备许多与软件开发有关的特性 - 比如,对编程语言的支持,或者提供程序构建工具。不过 Subversion 并不是这样的系统;它是一个通用系统,可以管理任何类型的文件集,包括源代码。 TortoiseSVN 的历史 在2002年,Tim Kemp 发现 Subversion 是一个很好的版本控制系统,但是没有好的图形化客户端,创建一个作为 Windows 外壳集成的 Subversion 客户端的创意来自 TortoiseCVS,一个非常类似的 CVS 客户端。 Tim 学习了 TortoiseCVS 的源代码,将其作为 TortoiseSVN 的基础,然后开始这个项目,注册了域名 tortoisesvn.org,并将源代码提交到网上。此时 Stefan Küng 正在寻找一个好的免费版本控制系统,他发现了 Subversion 和 TortoiseSVN,由于 TortoiseSVN 还不能够使用,他加入了这个项目并开始编程。很快他便重写了大多数代码,并且开始添加命令和特性,此时,最初的代码都已经不复存在了。 随着 Subversion 越来越稳定,吸引了越来越多的用户开始使用 TortoiseSVN 作为他们的 Subversion 客户端。用户群增长迅速(每天都持续增长)。Lübbe Onken 提供了许多漂亮图标和 TortoiseSVN 的 logo,细心照料网站并且管理翻译。 TortoiseSVN 的特性 是什么让 TortoiseSVN 成为一个好的 Subversion 客户端?下面是一个简短的特性列表。 外壳集成 TortoiseSVN 与Windows 外壳(例如资源管理器)无缝集成,你可以保持在熟悉的工具上工作,不需要在每次使用版本控制功能时切换应用程序。 并且你不一定必须使用 Windows 资源管理器,TortoiseSVN 的右键菜单可以工作在其他文件管理器,以及文件/打开对话框等标准的 Windows 应用程序中。你必须牢记,TortoiseSVN 是有意作为 Windows 资源管理器的扩展开发,因此在其他程序可能集成的并不完整,例如重载图标可能不会显示。 重载图标 每个版本控制的文件和目录的状态使用小的重载图标表示,可以让你立刻看出工作副本的状态。 Subversion 命令的简便访问   所有的 Subversion 命令存在于资源管理器的右键菜单,TortoiseSVN 在那里添加子菜单。   因为 TortoiseSVN 是一个 Subversion 客户端,我们也很愿意为你展示一些 Subversion 本身的特性:   目录版本控制   CVS 只能追踪单个文件的历史,但是 Subversion 实现了一个“虚拟”文件系统,可以追踪整个目录树的修改,文件和目录都是版本控制的,结果就是可以在客户端对文件和目录执行移动和复制命令。   原子提交   提交要么完全进入版本库,要么一点都没有,这允许开发者以一个逻辑块提交修改。   版本控制的元数据   每个文件和目录都有一组附加的“属性”,你可以发明和保存任意的键/值对,属性是版本控制的,就像文件内容。   可选的网络层   Subversion 在版本库访问方面有一个抽象概念,利于人们去实现新的网络机制,Subversion 的“高级”服务器是 Apache 网络服务器的一个模块,使用 HTTP 的变种协议 WebDAV/DeltaV 通讯,这给了 Subversion 在稳定性和交互性方面很大的好处,可以直接使用服务器的特性,例如认证、授权、传输压缩和版本库浏览等等。也有一个轻型的,单独运行的 Subversion 服务器,这个服务器使用自己的协议,可以轻松的用 SSH 封装。   一致的数据处理   Subversion 使用二进制文件差异算法展现文件的区别,对于文本(人类可读)和二进制(人类不可读)文件具备一致的操作方式,两种类型的文件都压缩存放在版本库中,差异在网络上双向传递。   高效的分支和标签   分支与标签的代价不与工程的大小成比例,Subversion 建立分支与标签时只是复制项目,使用了一种类似于硬链接的机制,因而这类操作通常只会花费很少并且相对固定的时间,以及很小的版本库空间。   良好的维护能力   Subversion 没有历史负担,它由一系列良好的共享 C 库实现,具有定义良好的 API,这使 Subversion 非常容易维护,可以轻易的被其他语言和程序使用。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值