如何在windows上安装部署设置SVN服务器

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何在windows上安装部署设置SVN服务器相关的知识,希望对你有一定的参考价值。

  一、准备工作
  1、SVN服务器:解压缩包,可以从官方网站下载最新版本。
  2、SVN客户端:TortoiseSVN,即常说的小乌龟,是一个客户端程序,用来与服务器端通讯。
  二、安装服务器和客户端程序
  1、SVN服务器:直接解压缩到某个文件夹下即可。示例路径:c:\svn\
  备注:如果下载的是msi程序,直接运行按提示安装即可。
  2、SVN客户端:直接运行按提示安装即可。示例路径:C:\Program Files\Subversion
  三、建立版本库(Repository):示例路径:e:\svnroot。建立版本库有两种方法:
  方法一,建立空目录e:\svnroot\repos1,进入repos1文件夹,在空白处点击右键,选择“TortoiseSVN->Create Repositoryhere...”,
  方法二,建立空目录e:\svnroot\repos2,进入DOS命令行,输入如下命令:
  svnadmincreate e:\svnroot\repos2

  四、运行SVN服务器,启动服务。启动服务有两种方法:
  方法一,临时启动服务,在DOS下输入如下命令:
  svnserve -d -r e:\svnroot\repos1 --listen-host ip地址 --listen-port=端口号
  说明:“listen-host”和“listen-port”可选。默认端口是3690,如果端口已经被占用,可以通过选项listen-port指定端口号。
  注意:请不要关闭命令行窗口,关闭窗口会把 svn服务就停止了。
  方法二,启动SVN服务为后台运行程序:
  sc create svnserve binPath= "c:\svn\bin\svnserve.exe --service -r e:\svnroot\repos1" displayname= "Subversion" depend=Tcpip start= auto
  说明一:
  (1)sc是windows自带的服务配置程序。svnserve是服务的名称,可根据需求取名。
  (2)参数binPath表示svnserve可执行文件的安装路径。
  (3)--service表示以windows服务的形式运行,--r指明svnrepository的位置,service参数与r参数都作为binPath的一部分,因此与svnserve.exe的路径一起被包含在一对双引号当中。
  (4)displayname表示在windows服务列表中显示的名字,depend=Tcpip表示svnserve服务的运行需要tcpip服务,start=auto表示开机后自动运行。安装服务后,svnserve要等下次开机时才会自动运行。
  说明二:
(1)binPath的等号前面无空格,等号后面有空格。displayname、depend、start也一样,service前面是--,不是- ,而r前面是-。
  (2)若要卸载svn服务,则执行 sc delete svnserve 即可。
  (3)从“sc”到“auto”是在同一个命令sc,必须写在同一行。
  (4)启动服务命令:netstart svnserve,停止服务命令:net start svnserve,也可以进入Windows提供的界面操作SVNService服务了,即控制面板—>服务。
  (5)如果路径中包括空格,一定要用“\”处理“"”号,例如上面的例子中如果svnserve.exe在“c:\programfiles\svn\”中,则命令应该写为“binpath="\"c:\programfiles\svn\bin\svnserve.exe\"

  五、配置用户和权限
  (1)修改svnserve.conf,在e:\svn\repos1\conf目录下,用文本编辑器打开svnserve.conf:
  将:
  # anon-access = read
  # auth-access = write
  # password-db = passwd
  改为
  anon-access = read
  auth-access = write
  password-db = passwd
  注意说明:
  anon-access等列前面是没有空格的。
  anon-access = read表示没通过用户名密码登录的访问只有读的权限,如果改为none则没有用户名密码不能访问
  auth-access = write表示通过用户名密码登录的有写的权限(当然读的权限也就有了)
  password-db = passwd表示可以通过 用户名 = 密码 的方式在passwd文件中添加用户
  (2)修改同目录的passwd文件,增加用户帐号:
  将:
  [users]
  # harry = harryssecret
  # sally = sallyssecret
  添加帐号:
  [users]
  # harry = harryssecret
  # sally = sallyssecret
  admin = admin
  添加一个admin账户,密码是admin。
  六、初始化SVN,导入数据
  选中要上传SVN的文件夹,“右键 ->TortoiseSVN -> Import...” ,在弹出对话框的“URL of repository”输入“svn://localhost/project1/”。在“Importmessage”输入注释,点击OK,要求输入帐号,输入账户admin和密码admin。
  七,测试SVN
  本地测试:新建一空文件夹test1,单击右键,选择“SVN Checkout”,在“URL of repository”中输入“svn://localhost/project1”。
  其他机器测试:如果运行svnserve的主机IP地址是1.2.3.4,则URL输入的内容就是“svn://1.2.3.4/project1”。
参考技术A 1.首先,假设你的电脑是win7 64位的,你要准备的东西:VisualSVN-Server-3.0.1-x64.msi和TortoiseSVN-1.8.8.25755-x64-svn-1.8.10.msi
2.安装完之后
3.打开VisualSVN Server Manager,直接右键Repositories,Create New Repository,输入Repository Name,假设输入的是testsvn,OK
4.那么现在在Repositories下就会有一个资源名称叫testsvn
5.那么我们现在右键Users,Create User,输入名称密码都是testsvn,OK,我们这就创建了一个叫testsvn的用户了,以后可以用它检入检出数据了
6.现在我们要检出这个资源的东西,右键Repositories下的testsvn,Copy Url to ClipBoard,这样就选中了它的url了
7.我们在C盘右键,选择SVN Checkout,在URL of repository粘贴,OK
8.经过以上步骤之后,你可以检出你的项目了,请尝试在里面新建修改文件提交就行了
9.如果你要在eclipse里面使用也可以,因为你已经有了url和用户名密码
10.如果我重装系统之后,资源是不是消失了?没关系,在菜单栏的操作(A)-Properties里面设置你的Repositories Root,这样,无论你怎么重装,都没有关系了,自己的svn,局域网的svn就这么配置好了。

如何在 Windows 服务器上使用 collabnet subversion edge 设置 SVN 服务器,以及如何在 Mac 上使用 Xcode 远程连接到它?

【中文标题】如何在 Windows 服务器上使用 collabnet subversion edge 设置 SVN 服务器,以及如何在 Mac 上使用 Xcode 远程连接到它?【英文标题】:how to setup a SVN server with collabnet subversion edge on windows server, and how to connect to it remotely using Xcode on Mac? 【发布时间】:2012-11-01 06:43:05 【问题描述】:

我是 SVN 服务器的新手。我之前确实使用过 SVN 来签入/签出代码,但从未学习过如何从头开始设置 Subversion 服务器。

我有什么:

服务器 | Windows Server 2012 标准版,已激活:

已安装 Collabnet Subversion Edge, 创建了一个存储库, 在localhost:4434/csvn/ 的 GUI 上使用开始按钮创建了用户并启动了服务器。

客户 | MacOSX Mountain,安装了 Xcode 4.5:

我尝试使用外部 IP 地址和存储库名称添加存储库 像https://1.1.1.1/svn/,但正如预期的那样,它不起作用并显示“主机无法访问”

我尝试使用本地主机名,也没有运气。虽然我确实在他们的文档中注意到,他们提到了 IP 地址设置,但我在任何地方都找不到。

我想让它让用户可以远程和本地访问和使用 SVN 存储库。

我不知道该怎么做,请帮助我。感谢您的宝贵时间!

【问题讨论】:

【参考方案1】:

回到服务器一分钟。当您配置它时,您是否只使用本地 Web 浏览器?您是否尝试过使用 Mac 上的网络浏览器访问服务器?我会看看 Mac 是否可以先访问 web gui。也许您有需要解决的网络问题,例如 DNS、路由或防火墙。

就使用 XCode 或任何 SVN 客户端而言,您必须输入的 URL 是您的存储库的 URL。那不会是:

https://1.1.1.1/svn/

会是这样的:

https://1.1.1.1/svn/reposname

在 Subversion Edge Web GUI 中,如果您转到存储库列表,您将在每个存储库旁边看到一个示例签出命令。此命令向您显示在 SVN 客户端中输入以到达存储库根目录的 URL。此处的示例截图:

https://ctf.open.collab.net/sf/projects/svnedge/screenshots/screens/repos/repos.png

【讨论】:

谢谢。因此,我通过禁用服务器上的 Windows 防火墙使存储库在本地工作。我的服务器名称是 SVN-SERVER,用户可以远程访问存储库吗?是去“SVN-SERVER/svn/reposname”吗?您是否必须使用他们的云服务才能创建可远程访问的存储库?【参考方案2】:

我想我已经解决了这个问题。我知道我必须以某种方式使用我的外部 IP 地址访问存储库,但是当我尝试类似的操作时,例如我的 IP 是 1.1.1.1,当我输入 https://1.1.1.1/svn/reposname 时,我收到一条无响应消息。

我认为由于我的本地网络上有超过 1 台计算机,路由器必须以某种方式仅将请求定向到我的服务器,而不是其他机器。经过一番研究,我发现端口转发可以解决问题。由于 apache 服务器默认使用 80 端口,只需从 CMD 使用 ipconfig 获取默认网关 ip,然后启用端口 80 的端口转发,到服务器的本地 ip 地址。至少我可以使用本地网络上的外部 ip 访问它。我将尝试远程访问它并查看。

【讨论】:

以上是关于如何在windows上安装部署设置SVN服务器的主要内容,如果未能解决你的问题,请参考以下文章

如何在windows上安装部署设置SVN服务器

如何在windows上安装部署设置SVN服务器

怎样在windows上设置svn服务器

如何在WIndows电脑上安装 SVN Server 实现代码版本控制

linux下svn客户端访问windows下的svn服务器

如何在阿里云服务器上部署SVN服务