SVN服务端、客户端安装配置和填坑

原创 2017年11月14日 09:35:01
一、svn服务端和客户端安装:
1、安装程序:
服务端程序:Setup-Subversion-1.8.17.msi
客户端程序:TortoiseSVN-1.9.7.27907-x64-svn-1.9.7.msi
注意,安装过程中,建议放在盘符根目录,即安装路径中不要有空格和中文。
以往做开发的经验得知,空格和中文会导致错误或bug出现。
如果环境变量路径是C:\Program Files (x86)\Subversion\bin; 建议修改。
不存在说服务端和客户端程序版本不一致等问题。


2、重启电脑!!!!!


3、安装后检查:
安装完成后,重启电脑。
重启电脑,
1)、cmd窗口中输入命令echo %path%,检查svn环境变量路径是否正确。
2)、服务端的是否在客户端前面(是否需要C:\TortoiseSVN\bin没测试)。
比喻:
C:\Subversion\bin;C:\TortoiseSVN\bin;
3)、在命令行输入svn --version,看能否正确得到提示;以及版本号是否是服务端程序的版本号[svn,版本 1.8.17 (r1770682)]。
如果你此时获取不到版本号信息,或获取到的版本号为 1.9.7 说明服务端环境变量路径错误或没配置。
4)、在随便位置点击鼠标右键,看看右键菜单上是否出现SVN Checkout和TortoiseSVN选项。


4、如果以上操作,cmd窗口打印的环境变量中,svn服务端和客户端路径正确,
Subversion在TortoiseSVN前面,任意位置的鼠标右键菜单中有相应的选项,
证明svn安装正确。










二、svn服务器端配置:
1、正确安装好svn后,需要创建服务器仓库:
X:\......>svnadmin create 仓库目录名
如:
K:\test>svnadmin create DKRepos


2、修改服务器访问权限:
打开仓库目录下的conf/svnserve.conf文件,去掉"# "开启相关权限,注意#和空格一起去掉。


关于匿名访问的权限,自行决定是否修改:(一般只允许只读或不让访问)
# anon-access = read
# auth-access = write


用户账号密码访问配置,改成需要账号密码验证:
# password-db = passwd
改成:
password-db = passwd
去掉上面代码行前的#和空格,否则连svn时会提示conf/svnserve.conf文件27行错误


开启了用户账号密码验证后,再打开仓库目录下的conf/passwd文件,在内容最后添加用户:
格式:
用户名=密码


如:
dk=954120245




3、cmd窗口启动svn服务器(启动后cmd窗口不要关闭,若关闭了则svn服务就停止了):
X:\......>svnserve -d -r 仓库路径\仓库名
如:
K:\test>svnserve -d -r DKRepos 或 C:\>svnserve -d -r K:\test\DKRepos


-d  :后台运行
-r  :以root的身份运行
如果觉得命令行启动服务麻烦,后面有创建系统服务的代码


4、验证svn服务器是否启动成功:
在任意位置鼠标右键,选择TortoiseSVN -> Repo-browser,
在出现的URL窗口中,输入
svn://localhost

svn://127.0.0.1

svn://当前电脑所在的局域网IP地址


然后确定,看是否能登录上,试试上传下载文件操作。


此时,你电脑有了svn中心服务器了,也有了链接服务器的乌龟壳客户端了。
如果想让别人连你的svn服务器怎么办?告诉别人你的IP地址就可以了,让他连你ip。
比喻:svn://当前电脑所在的局域网IP地址














三、svn系统服务创建:
语法:
sc create 服务的名称 binPath= "\"svn服务器端程序路径\" --service -r 服务器仓库路径" displayname= "显示的名称" depend= Tcpip start= auto


"服务的名称"是给电脑识别的,比喻你要用命令行启动、停止、删除或创建服务时用到的名字。
"显示的名称"是给人看的,比喻你打开系统服务窗口后寻找的名字。
你只需要修改svn服务器端程序路径、服务器仓库路径和显示的名称即可,其他的都别动。


正确方法1:
sc create svnservice binpath= "\"C:\Subversion\bin\svnserve.exe\" --service -r K:\test\DKRepos" displayname= "SVNServer" depend= Tcpip start= auto


正确方法2(未验证):
sc create SVNServer binPath= "C:\Subversion\bin\svnserve --service -r K:\test\DKRepos"


注意:K:\test\DKRepos路径必须是指向服务器仓库的,如果是指向K:\test则是无效的。


完整代码(新建文本文档,粘贴下面代码,保存,更改文件后缀名为bat,用管理员权限运行bat文件,去系统服务窗口查找SVNServer):


**bat代码*************************************************
@echo off
@sc create svnservice binpath= "\"C:\Subversion\bin\svnserve.exe\" --service -r K:\test\DKRepos" displayname= "SVNServer" depend= Tcpip start= auto
@net start svnservice
pause
**bat代码*************************************************


多说一句,cmd窗口输入services.msc,就可以打开系统服务窗口












四、启动停止svn服务:
启动服务:
net start svnservice
停止服务:
net stop svnservice
删除创建的服务:
sc delete svnservice


注意:如果创建服务或删除服务失败,有可能是没有超级管理员权限,用超级管理员模式运行。












五、连不上svn服务器的问题:
*错误提示***********************************************
Unable to connect to a repository at URL 'svn://...'
期望文件系统格式在"1"到"6"之间;发现格式"7"
********************************************************


是否遇到了上面错误提示?*_*


如果你按照我的步骤操作,是不会遇到这个问题的。
不是网上所说的,什么客户端程序版本号高于服务端的。
我一开始为什么强调环境变量?
是因为Subversion的环境变量没配置,或路径错误,或在TortoiseSVN的环境变量后面,
故在创建服务器仓库时,使用了TortoiseSVN\bin下的svnadmin命令。
跟客户端服务端版本号没关系,跟其他操作流程没关系,跟服务创建没关系。


于是,解决这个问题很简单,更改环境变量,确保在cmd下输入svn --version,能得到的是服务端程序的版本号。
再重新执行创建和配置服务器仓库操作即可。





开发人员学Linux(8):CentOS7编译安装Subversion1.9.5及Apache2.4.25并集成

本篇将介绍如何编译安装SVN服务器端管理软件subverion和Web服务器Apache。本来在前面的系列文章已经讲过使用Nginx作为Web服务器的,所以我一直在找有关subverion集成ngin...
  • zhoufoxcn
  • zhoufoxcn
  • 2017-06-16 00:06:01
  • 1883

subversion版本控制

版本控制是管理信息修改的艺术,它一直是程序员最重要的工具,程序员经常会花时间作出小的修改,然后又在某一天取消了这些修改,想象一下一个开发者并行工作的团队 - 或许是同时工作在同一个文件!- 你就会明白...
  • phunxm
  • phunxm
  • 2014-11-05 22:02:18
  • 6868

windows下SVN 1.6 服务端和客户端安装配置.docx

  • 2012年04月19日 21:09
  • 18KB
  • 下载

svn 服务端 客户端

  • 2017年09月05日 10:25
  • 59.51MB
  • 下载

windows 安装subversion1.9.4及配置

1.下载与安装 subversion1.9.4官方下载地址:https://www.visualsvn.com/downloads/ 下载后解压至将要安装目录:如我放在c盘下,结构如下: 2...
  • cuiyaoqiang
  • cuiyaoqiang
  • 2016-06-15 11:10:36
  • 9843

CentOS7+Apache2.4.6+Subversion1.7.14+Tomcat9+Mysql5.6+JDK1.8+svnadmin3.0.5傻瓜式搭建

Linux基础落下好多年了,基本忘完了,现在都是摸索着学习去尝试捡回来。所以现阶段主要目标是以模拟实际工作生产需要的种种环境,尝试进行搭建和还原,模拟运行成功。尽量先做到“知其然”,再做到“知其所以然...
  • xstarwork
  • xstarwork
  • 2017-06-14 17:00:28
  • 624

SVN客户端与服务端安装详解

SVN客户端与服务端安装详解
  • xy18930914
  • xy18930914
  • 2015-12-21 15:55:32
  • 7393

Svn linux服务端安装及配置

Svn服务端安装及配置 安装centos7 关闭selinux防火墙 安装httpd subversion 软件安装 Apache 配置 svn apache 配置 加载组件模块 创建svn客户端授权...
  • wm5920
  • wm5920
  • 2017-07-31 20:04:48
  • 862

Incompatible JavaHL library loaded. Subversion 1.8.x required.

Mac OS X 下 Eclipse 安装 SVN 插件 subclipse 和 JavaHL 之后,启动 Eclipse ,使用版本管理相关功能时,第一次会弹出提示:Incompatible Jav...
  • testcs_dn
  • testcs_dn
  • 2017-04-07 12:23:32
  • 2015

CentOS7编译安装SVN(subversion1.9.7)

参考连接0:http://www.programering.com/a/MDMzYDMwATg.html参考连接1:http://www.zsythink.net/archives/13180.系统信...
  • magerguo
  • magerguo
  • 2018-03-08 11:04:46
  • 35
收藏助手
不良信息举报
您举报文章:SVN服务端、客户端安装配置和填坑
举报原因:
原因补充:

(最多只允许输入30个字)