如何在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服务器的主要内容,如果未能解决你的问题,请参考以下文章