如何快速建立Subversion服务器

如何快速建立Subversion服务器,第1张

1,软件下载

SVN服务器
本文以下载svn-win32-161zip 为例进行安装

下载Subversion的Windows客户端TortoiseSVN。(如果习惯CMD命令方式,也可以不下载)

2,服务器和客户端安装

服务器安装,解压下载的svn-win32-161zip到任意位置

安装TortoiseSVN,按照提示安装即可。(如果习惯CMD命令方式,也可以不安装)

3,建立版本库(Repository)

方法一:命令方式
用CMD进入svn-win32-161zip解压后的bin文件夹执行
svnadmin create D:\svnRoot
就会在目录D:\svnRoot下创建一个版本库。

方法二:使用TortoiseSVN图形化的完成这一步
在目录D:\svnRoot上"右键->TortoiseSVN->Create Repository here “,就会将D:\svnRoot创建为一个版本库

4,配置用户和权限

来到D:\svnRoot\conf目录,修改svnserveconf:
# [general]
# password-db = passwd
改为(即去掉前面的#):
[general]
password-db = passwd
然后修改同目录的passwd文件,去掉注释:
# [users]
最后变成:
[users]
然后照:用户名=密码的形式创建用户

5,运行独立服务器

安装服务,在任意目录下运行:
sc create subversion_service binpath= "C:\svn-win32-161\bin\svnserveexe --service -r D:\svnRoot" displayname= "Subversion Repository" depend= Tcpip

其中subversion_service 为自定义的服名;C:\svn-win32-161为svn-win32-161zip的解压目录;D:\svnRoot为版本库文件夹,可根据实际情况修改

之后可以在我的电脑上点右键->管理->服务里找到Subversion Repository将其启动并设置为“自动”

(附:如需删除服务请使用sc delete subversion_service)

6,初始化导入

方法一:命令方式
例如:C:\svn-win32-161\bin>svn import D:\AAA\Workflow file:///D:/svnRoot\workflow -m "initial import"
其中D:\AAA\Workflow为欲导入的文件或文件夹;file:///D:/svnRoot\workflow即为之前设置的版本库位置

方法二:使用TortoiseSVN
如果是文件夹:右键->TortoiseSVN->Import URL of repository输入“svn://localhost/”
然后写上导入信息,以便于以后查看及 *** 作ok
如果是文件:可以在任意位置点右键->TortoiseSVN->Repo-brower,之后的 *** 作相信大家都会

以上 *** 作可以完全在另一台安装了TortoiseSVN的主机上进行。例如运行svnserve的主机的IP是1339612122,则URL部分输入的内容就是“svn://1339612122/”。

7,基本客户端 *** 作

取出版本库到一个工作拷贝:
来到任意空目录下,运行右键->Checkout,在URL of repository中输入svn://localhost/,这样我们就得到了一份工作拷贝。
在工作拷贝中作出修改并提交:
作出修改,然后右键->Commit,这样我们就把修改提交到了版本库。

查看所作的修改:
文件上右键->TortoiseSVN->Show Log,这样我们就可以看到我们对这个文件所有的提交。在版本1上右键->Compare with working copy,我们可以比较工作拷贝的文件和版本1的区别。

有个办法可以实现,但安装配置比较麻烦。
要实现你的想法,关键在于要把每个SVN库的权限文件分开存放,而不能是在同一个权限文件中存放所有版本库的权限。这样才有可能把某个权限文件的控制权限只开放给某个SVN管理员。

按照这个思路,在搭建SVN服务器的时候,可以用SVN、Apache集成搭建,在apache的>SVN分客户端和服务器端,如果已经有SVN服务器了(比如公司已经架设了SVN服务器),那么你电脑上只要装客户端就可以了,最常用的客户端是TortoiseSVN,另外也有用于Eclipse的SVN插件,看你平时用SVN来做什么了。

如果没有服务器端,那就要自己架设SVN服务器,那么你的电脑上就客户端、服务器端都要安装,服务器端推荐Collabnet 的SVN Edge版服务器安装包,相对而言安装配置比较简单,自带服务器管理控制台,而且免费。

看我的百度文库,有SVN服务器架设与SVN使用相关的文档。

方法/步骤
1、打开版本库的目录,这里是“G:\SVNHome\conf”,目录下面有三个文件,用文本编辑工具打开“svnserveconf”
2、去掉红框中行前的井号及空格,保存。
3、注意:“#
authz-db
=
authz”我句的不要去掉,我刚开始的时候把这行的井号及空格去掉了,结果总是提示认证失败!
4、编辑“passwd”文件,在最后一行添加用户名和密码,密码是明文的,用户名和密码用等号分隔,等号两边可以有空格,空格不会被认为是密码。
5、打开Windows服务管理器,重新启动SVN服务。
6、测试配置是否正确:(安装了SVN客户端的前题下)在任意一个目录下单击鼠标右键》TortoiseSVN》Repo-Browser,在d出的对话框中输入“svn://127001/svnhome/”,确定
输入用户名和密码,确定;
如果用户名和密码输入不正确或者是配置不正确,则会提示“认证失败”。
7、创建一个目录,测试权限:在右侧窗口是单击鼠标右键》Create
Folder,在d出的对话框中输入文件夹名称,确定,在d出的对话框中输入注释,确定。

直接开放svnserve的端口就可以了,默认端口是3690

如果selinux开启了,它会阻止文件的写入,从仓库中拉去正常,但上传的时候会出现 不能打开文件"/db/txn-current-lock"权限不够

如果出现semanage未定义,可以参考 CentOS7 中安装semanage来设置selinux

仓库目录为 /home/svn/test ,如果要删除版本仓库直接删除目录就可以了 rm -rf /home/svn/test

在仓库目录 /home/svn/test 的 conf 目录中会有三个文件

修改配置

修改配置添加账号密码,以 账号=密码 的格式配置, = 号二边尽量不要存在空格

权限管理分为组管理和目录权限管理

多个创建可以共用一套账号和密码权限管理。也可以用不同的账号密码管理,如果用不同的配置少单仓库类似,修改每个仓库conf下的账号和权限文件就可以了。下面说一下共用账号权限文件的情况。

在仓库目录 /home/svn 目录中创建authz文件和passwd文件。

修改配置各仓库下conf/svnserveconf。将password-db和authz-db指向/home/svn/目录下的文件

修改/home/svn/passwd配置添加账号密码,以 账号=密码 的格式配置, = 号二边尽量不要存在空格

修改/home/svn/authz权限管理分为组管理和目录权限管理

如果单仓库以/home/svn启动,此时访问的地址会有仓库名。 svn://ip/test

访问地址分别为:

编辑 /etc/sysconfig/svnserve 文件,修改 OPTIONS="-r /var/svn" 参数改为svn仓库目录 OPTIONS="-r /home/svn"

设置开机启动

修改后也可以用systemctl来启动、停止、重启

svnserve启动后,修改authz和passwd文件是时实生效的,并不需要重启服务

有时随着仓库越来越多,权限配置也越来越多时,会出现一些配置错误,导致访问时出现无法加载权限验证之前的错误,这个时候我们可以将svn服务器的日志打印出来,看些配置出错了。

停止svn服务器,重新附加log-file参数输入日志到指定文件

1、安装网盘
选择一个国内有名的网盘存储,例如金山网盘、360云盘等,注册账户会默认赠送几G的使用空间,然后下载其对应的网盘客户端管理软件(也可以使用浏览器方式),使用账号登录,就可以上传、管理文件等。
2、建立SVN Reporsitory
于网盘创建svn reporsitory
,在网盘中创建目录,例如“svn”目录,进入该目录后使用TortoiseSVN工具创建仓库(reporsitory)
3、SVN使用-导出
创建项目目录为”project”,在”project”中点击右键选择SVN Checkout,配置如下图所示信息:仓库>

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/13471456.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-08-13
下一篇 2023-08-13

发表评论

登录后才能评论

评论列表(0条)

保存