Ubuntu下SubVersion安装方法(摘抄)
2013-01-23 00:00
211 查看
今天,我得到领导的命令在ubuntu上搭建一个SVN服务器。对于我这个对Linux都不怎么熟的菜鸟而言,确实有一定的挑战。
于是我在网上查了很多资料,越看头越大。最后找到一篇关于在Window环境建SVN服务器的文章。我想,在windows下建与在ubuntu上应该差 不多。所以我说按着上面的步骤一步一步做。终于,还是搞定了!现在回想起来,在ubuntu上建一个SVN服务器还是非常简单的。
以下是摘抄的,并根据我自己的实际情况加以修改。原文:Subversion之路
服务器IP地址:192.168.0.220
$ sudo apt-get install subversion
然后根据提示一步一步,就完成了SVN的安装;
运行如下指令:
$ svnserve -d -r /host/svn
其中的 -d 参数表示 svnserve 将会作为一个服务程序运行在后台,而 -r 参数表示将 /host/svn 目录指定为代码库的根目录。这样,当客户端使用类似 svn://192.168.0.220/foo 这样内容的 URL 来访问服务器时候,其所访问到的真实代码库,其实就是 /host/svn/foo
$ svnadmin create swsoft
使用上述命令之后,如果不出问题的话,在 /host/svn 目录下就会多出一个叫做 swsoft 的目录,其下具备 conf、dav、hooks、locks、db 等子目录或文件,此即 一个名为swsoft的代码库 。从此,通过 svn://192.168.0.220/swsoft 这样的 URL,我们就可以对这个代码库进行访问了。接下来就要进入本文的正题了,也就是权限配置部分了。
其实进入 arm/conf 目录你就会发现,它下面已经存在三个写了一些帮助信息和示例的配置文件,以帮助用户尽早掌握其配置方法。这三个默认的配置文件分别是 svnserve.conf、passwd、authz 。其中后两者没有后缀,对于 windows 系统的用户来说,看起来总是有些怪异,所以在接下来的章节里面,我将它们两个都给添加了个 conf 后缀,以便管理。
注:上述文件一旦更改,立即生效。不需要重启 svnserve 服务器。
$ cd /home/tmp
$ svn import arm svn://192.168.0.220/swsoft --username LCJ --password 123
导入整个目录结构。
这条指令的精确意思是,将 arm 目录下面的所有东西,导入到那个名叫 arm 的代码库中去。如果你不指定源目录,则 svn 会默认将当前目录作为源目录。比如说,你处于 /home/tmp 目录下的时候,直接执行 svn import svn://192.168.0.220/swsoft ,那么当你取出你的代码的时候,你会发现,居然多了一层名为 swsoft 的目录。结果,你就必须使用类似 svn://192.168.0.220/swsoft/swsoft 这样怪异的URL,才能够正确访问到你的代码们。
这一点粗看好像不是特别重要,不过联想到前述的目录授权规则,可都是按照标准的项目目录结构来设计的。突然之间,你项目的根目录之上,多出了一个名 为 arm 的目录,那么我们的所有目录授权规则,基本上都要全部改过了,否则除了根目录,你永远会得到一个莫名其妙的“access denied”。由于 Subversion 在这一步骤上的界面不够人性化,因此这是初学者很容易弄混的地方之一。
$ svn co svn://127.0.0.1/swsoft/monitor --no-auth-cache --username LJZ --password 123
我们应该得到客户机上提交上去的数据。
然后修改目录下任意文件并提交,服务器将会报错“Access denied”,Bingo! 因为LJZ账户没有写权限。
同理,找另一台客户机,输入:
$ svn co svn://192.168.0.220/swsoft/monitor --no-auth-cache --username LCJ --password 123
则可以下载数据,也可以提交数据。
打开 /etc/init.d/rc.local 文件,在文件的最后一行追加一行:
svnserve -d -r /host/svn
或在 /etc/profile.d/ 目录下添加一个 startup_svn.sh 文件,在文件中写入该行命令也可。
只要保证开机启动 svn 服务器即可。
到此为为,SVN服务器安装完毕。接下来,您最好看一下关于SVN命令使用的相关文章。
其它资料:
SVN俱乐部,SVN服务器安装
于是我在网上查了很多资料,越看头越大。最后找到一篇关于在Window环境建SVN服务器的文章。我想,在windows下建与在ubuntu上应该差 不多。所以我说按着上面的步骤一步一步做。终于,还是搞定了!现在回想起来,在ubuntu上建一个SVN服务器还是非常简单的。
以下是摘抄的,并根据我自己的实际情况加以修改。原文:Subversion之路
服务器IP地址:192.168.0.220
3.2.1 安装与启动 Subversion 服务
首先需要安装SVN。Ubuntu下的SVN安装十分简单,输入命令$ sudo apt-get install subversion
然后根据提示一步一步,就完成了SVN的安装;
运行如下指令:
$ svnserve -d -r /host/svn
其中的 -d 参数表示 svnserve 将会作为一个服务程序运行在后台,而 -r 参数表示将 /host/svn 目录指定为代码库的根目录。这样,当客户端使用类似 svn://192.168.0.220/foo 这样内容的 URL 来访问服务器时候,其所访问到的真实代码库,其实就是 /host/svn/foo
3.2.2 建立代码库
在服务器端的 /host/svn 目录下,建立一个名为 swsoft 的代码库,命令如下:$ svnadmin create swsoft
使用上述命令之后,如果不出问题的话,在 /host/svn 目录下就会多出一个叫做 swsoft 的目录,其下具备 conf、dav、hooks、locks、db 等子目录或文件,此即 一个名为swsoft的代码库 。从此,通过 svn://192.168.0.220/swsoft 这样的 URL,我们就可以对这个代码库进行访问了。接下来就要进入本文的正题了,也就是权限配置部分了。
其实进入 arm/conf 目录你就会发现,它下面已经存在三个写了一些帮助信息和示例的配置文件,以帮助用户尽早掌握其配置方法。这三个默认的配置文件分别是 svnserve.conf、passwd、authz 。其中后两者没有后缀,对于 windows 系统的用户来说,看起来总是有些怪异,所以在接下来的章节里面,我将它们两个都给添加了个 conf 后缀,以便管理。
3.2.3 编辑代码库基础配置文件
在服务器端,编辑代码库的 swsoft/conf/svnserve.conf 文件,如下:[general] password-db = passwd authz-db = authz anon-access = none auth-access = write
3.2.4 管理用户帐号
在服务器端,打开 swsoft/conf/passwd 文件,如下:[users] LCJ=123 LJZ=123 LXH=123 LP=123 HXL=123
3.2.5 建立目录访问权限控制文件
在服务器端,打开 arm\conf\authz文件,内容如下:[groups] team=LCJ,LJZ,LP,HXL leader=LJZ,LXH admin=LCJ,LJZ [/] @admin=rw *= [/public] *=rw [/sws4800] ### 注意:不要写成[/sws4800/],否则无效! @team=rw @leader=r [/monitor] LCJ=rw *=
注:上述文件一旦更改,立即生效。不需要重启 svnserve 服务器。
3.2.6 导入代码
在客户机 /home/tmp 目录下,建立好前述“背景假设”一节中描述的目录结构,然后用命令$ cd /home/tmp
$ svn import arm svn://192.168.0.220/swsoft --username LCJ --password 123
导入整个目录结构。
这条指令的精确意思是,将 arm 目录下面的所有东西,导入到那个名叫 arm 的代码库中去。如果你不指定源目录,则 svn 会默认将当前目录作为源目录。比如说,你处于 /home/tmp 目录下的时候,直接执行 svn import svn://192.168.0.220/swsoft ,那么当你取出你的代码的时候,你会发现,居然多了一层名为 swsoft 的目录。结果,你就必须使用类似 svn://192.168.0.220/swsoft/swsoft 这样怪异的URL,才能够正确访问到你的代码们。
这一点粗看好像不是特别重要,不过联想到前述的目录授权规则,可都是按照标准的项目目录结构来设计的。突然之间,你项目的根目录之上,多出了一个名 为 arm 的目录,那么我们的所有目录授权规则,基本上都要全部改过了,否则除了根目录,你永远会得到一个莫名其妙的“access denied”。由于 Subversion 在这一步骤上的界面不够人性化,因此这是初学者很容易弄混的地方之一。
3.2.7 测试
在服务器上,打开一个命令终端,输入如下指令:$ svn co svn://127.0.0.1/swsoft/monitor --no-auth-cache --username LJZ --password 123
我们应该得到客户机上提交上去的数据。
然后修改目录下任意文件并提交,服务器将会报错“Access denied”,Bingo! 因为LJZ账户没有写权限。
同理,找另一台客户机,输入:
$ svn co svn://192.168.0.220/swsoft/monitor --no-auth-cache --username LCJ --password 123
则可以下载数据,也可以提交数据。
3.2.8 其它
为了让服务器开机后就能启动svnserve服务程序,需要做一点小修改。打开 /etc/init.d/rc.local 文件,在文件的最后一行追加一行:
svnserve -d -r /host/svn
或在 /etc/profile.d/ 目录下添加一个 startup_svn.sh 文件,在文件中写入该行命令也可。
只要保证开机启动 svn 服务器即可。
到此为为,SVN服务器安装完毕。接下来,您最好看一下关于SVN命令使用的相关文章。
其它资料:
SVN俱乐部,SVN服务器安装
相关文章推荐
- ubuntu 下 SubVersion 安装方法(摘抄)
- ubuntu下安装subversion客户端及使用方法
- 继续摘抄:Ubuntu:SubVersion服务安装设置
- 【转】ubuntu下安装subversion客户端及使用方法
- ubuntu下安装subversion客户端 以及svn使用方法
- Win7+Ubuntu16.04双系统安装方法
- ubuntu安装pyOpenSSL报错的解决方法
- Ubuntu10.04中手动安装最新jdk的方法 转自:http://www.pczpg.com/a/2010/0907/19192.html
- 用link方法安装Eclipse插件(Windows和Ubuntu都适用)
- 在 Ubuntu 15.04/CentOS 7 中安装 Lighttpd Web 服务器的方法
- linux (ubuntu)下安装使用QQ的方法--超级棒的
- php5-fpm以及fcgiwrap在ubuntu下的安装方法【非原创】
- ubuntu14.04 ssh的安装及使用方法
- RabbitVCS:Linux下的TortoiseSVN,ubuntu下安装方法
- Ubuntu安装Vmware Tools后hgfs无法看到共享文件的解决方法
- Ubuntu下deb包的安装方法
- Windows和Ubuntu双系统完全独立的安装方法
- ubuntu 下安装rpm的方法
- ubuntu 11.10 安装oracle 10g 成功步骤及问题解决方法
- ubuntu 安装wineqq国际版方法及可能出现的问题