Windows搭建Svn服务器

Windows搭建Svn服务器SVN Subversion 是一个开源的版本控制系统 用于管理代码的版本控制和协作开发

大家好,欢迎来到IT知识分享网。

1、svn概述

1.1、svn简介

SVN(Subversion)是一个开源的版本控制系统,用于管理代码的版本控制和协作开发。它提供了一系列的命令行工具,以及一套客户端和服务器架构,用于管理代码的版本控制和协作。

在Windows系统,主要有TortoiseSVN和VisualSVN两种客户端GUI集成管理工具。

  • TortoiseSVN,也就是我们常说的“小乌龟”。可以帮助团队成员协同工作,跟踪代码的变化,解决冲突,并保留历史记录。它提供了一套图形化的界面,使用户可以直观地进行版本控制操作,如添加、提交、更新、回滚等。它还提供了一些高级功能,如分支、合并、标签等,以支持更复杂的开发流程。
  • VisualSVN是一个商业的SVN集成工具,专为Microsoft Visual Studio开发环境设计。它提供了与TortoiseSVN类似的功能,但更加紧密地集成到Visual Studio中,使开发人员可以在IDE中直接进行SVN操作。

1.2、svn与git的主要差异

SVN和Git都是版本控制工具,但是它们有一些主要的差异。

  1. 分布式 vs 集中式:Git是分布式版本控制系统,每个开发者都有一个完整的代码仓库副本,并且可以在本地进行版本控制。而SVN是集中式版本控制系统,所有代码都托管在中央服务器上,每个开发者只能通过网络访问中央服务器来进行版本控制。
  2. 分支管理:Git在分支管理上比SVN更加灵活。Git的分支是轻量级的,创建和切换分支非常快速。而SVN的分支需要在服务器端创建,切换分支时需要从服务器端进行操作。
  3. 修改历史:Git记录文件的修改历史是基于内容的,每次提交都会生成一个新的快照。SVN记录的是文件的差异,每次提交只会记录文件的增删改动。
  4. 提交操作:Git的提交是本地操作,可以多次提交后再一次推送到远程仓库。SVN的提交是直接同步到中央服务器上。
  5. 分布式开发与协作:由于Git是分布式的,每个开发者都可以在本地进行版本控制和开发,而不会对其他人产生影响。SVN需要通过网络访问中央服务器,开发者需要提交代码到中央服务器上。

总的来说,Git更加适合分布式开发和协作,具有更强大的分支管理功能和快速的提交操作。SVN适合集中式的版本控制和较简单的项目。对于开发来说,Git和Svn使用通常没什么难度,而对于非开发人员(例如策划测试等),git绝对是个噩梦,svn才是正确的选择。

2、TortoiseSVN安装与使用

2.1、TortoiseSVN安装

本文主要使用TortoiseSVN进行演示。

官网下载–》 svn官网下载

Windows搭建Svn服务器

网络问题,可能下载不了,换个地址,从svn中文网下载–> svn中文网下载

Windows搭建Svn服务器

软件安装:

安装过程比较简单,但有两点需要注意:

1.安装路径最好不要带有空格,如常见的”E:\Program Files”,不然注册windows服务比较麻烦。

2.安装过程记得把命令行工具栏勾选上,才可以使用命令行的方式操作,如下所示

Windows搭建Svn服务器

安装重启之后,鼠标右键可以出现以下界面:

Windows搭建Svn服务器

2.2、TortoiseSVN使用

选择一个文件目录作为代码远程仓库,然后右键

TortoiseSVN->Create repository here,创建一个仓库。然后选择”Create folder structure”,创建svn默认的目录结果,包括trunk(主干),branches(分支),tags(标签)

Windows搭建Svn服务器

用户/权限配置 

编辑conf/svnserve.conf文件,下面的配置项目取消注释

Windows搭建Svn服务器

编辑conf/passwd文件, 增加几个测试账号

 This file is an example password file for svnserve. Its format is similar to that of svnserve.conf. As shown in the example below it contains one section labelled [users]. The name and password for each user follow, one account per line. [users] admin = admin Lily = harryssecret Lucy = sallyssecret Tom = sallyssecret

编辑conf/authz文件,进行权限控制。

该配置表明:

只有管理员(admin)对根目录拥有全部权限

开发人员(dev组)对根目录只有只读权限

用户Tom对trunk子目录拥有读写权限,其他用户只有只读权限

组成员前面加个符合”@”,非组成员没有符合

[groups] admin=admin dev=Lily,Lucy [/] @admin = rw @dev = r * = [/trunk] Tom = rw # * = r

启动svn服务器

svnserve -d -r E:\svnrepo

 注意:该命令执行完毕之后,在控制台是没有任何反应的,但执行已经成功了,不要关闭窗口。

每次手动启动比较麻烦,可以通过以下命令注册成windows服务。

 sc create svnserve binpath= "E:\TortoiseSVN\bin\svnserve.exe --service -r E:\svnrepo" displayname= "svnservice" depend= Tcpip start= auto 

使用账户Lily切出trunk目录,执行成功

PS E:\web2> svn co svn://192.168.0.105/trunk --username Lily A trunk\svn.ico Checked out revision 2.

然而提交新文件的时候,执行成功(没有写入权限)

PS E:\web2\trunk> svn add .\readme.txt A readme.txt PS E:\web2\trunk> svn commit -m 'test' svn: E: Commit failed (details follow): svn: E: Authorization failed

3、svn客户端简单操作

3.1、下载本地代码

刚进企业,部门主管会帮你开通svn账号,并给你一个地址。我们先把代码下载到本地。

新建一个本地目录,右键“SVN Checkout”,输入地址即可。(第一次登录需要输入账号密码,后续自动保存到本地)

Windows搭建Svn服务器

3.2、更新代码

项目是整个团队在工作,时时刻刻都可能有别的成员提交代码,比如说同事提交了一个接口,说你使用某个功能直接调用一下他的接口就好了。所以,我们需要更新本地代码,与远程保持一致。

操作也很简单,直接在工作目录,空白地方,右键”SVN Update”即可。

Windows搭建Svn服务器

3.3、提交代码 

当你小心翼翼写了几行代码,终于到了提交代码的时候了,第一次提交的时候难免诚惶诚恐。

提交代码的时候,有几点注意事项:

  • 提交之前务必先更新代码,检查是否有冲突(团队成员刚好跟你修改了同一个文件)。
  • 提交务必添加注释(例如功能开发或者bug修复),便于团队检阅(包括后期的自己)。

Windows搭建Svn服务器 直接在工作目录,空白地方,右键”SVN  Commit”,确认没有冲突,添加注释日志,点击OK即可。

如果是自己新增加的文件,还需要执行“Add”操作,先添加文件,再提交。

Windows搭建Svn服务器

免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://haidsoft.com/121947.html

(0)
上一篇 2025-10-20 14:20
下一篇 2025-10-20 14:33

相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注微信