您的位置:首页 > 其它

Ubuntu 14.04安装SVN使用记录

2018-03-28 15:14 411 查看

近期经理给找了个活,在公司的云服务器上搭一个SVN,分出两个账户,一个能读写,另一个只能读

公司的云服务器是Ubuntu14.04版本的,上网查了查资料,开始搭,用了一上午才跑通

用apt-get下载Subversion(因为是Ubuntu),这里我都是用sudo命令执行的

sudo apt-get install subversion


检查一下svn是否安装成功

svnserve --version


查询后会出现版本号等信息,这说明安装成功,然后我们需要创建SVN账户和组,这也是为了以后方便实用

sudo adduser svnuser
sudo addgroup subversion
sudo addgroup svnuser subversion


用户和组创建完毕后,我们需要创建项目地址

cd /srv
sudo mkdir svn
cd svn
sudo mkdir license_repository
#给license_respository文件夹设定组和用户还有权限
sudo chown -R root:subversion license_repository
sudo chmod -R g+rws license_repository


创建SVN文件仓库

sudo svnadmin create /srv/svn/license_repository


访问方式及项目的导入

svn co file:///srv/svn/license_repository
#或者
svn co file://localhost/srv/svn/license_repository
#注意:
#如果您并不确定主机的名称,您必须使用三个斜杠(///),而如果您指定了主机的名称,则您必须使用两个斜杠(//).
#下面的命令用于将项目导入到SVN 文件仓库:
svn import -m "New import" /srv/svn/license_repository file:///home/svnuser/src/fitness
#一定要注明导入信息


访问权限的设置

#修改配置文件
vim /srv/svn/license_repository/conf/svnserve.conf
#如下修改
[general]
#匿名用户不可读
anon-access=none
#权限用户可以写入
auth-access=write
#密码文件为passwd
password-db=passwd
#权限文件为authz
authz-db=authz
#输入:wq退出vim,然后修改authz文件
vim /srv/svn/license_repository/conf/authz
#按如下修改
[groups]
#设置管理员组 设置admin组的用户为tone admin组有rw权限 而另外设置一个clientele组,除admin组外均为只读权限
admin=developer
clientele=client1,client2
[/]
@admin=rw
*=r
#:wq退出vim编辑器,然后去修改passwd文件,来修改用户的密码
vim /srv/svn/license_repository/conf/passwd
[users]
developer=power
client1=test11
client2=test22


至此,配置文件编辑完毕,可以启动svn了,这里需要注意的是,之前不论是文件夹还是账户,均是由sudo命令创建的,所以执行启动时也必须用sudo命令,否则svn服务器将无法操作文件夹

#这里 d是指以守护进程的方式运行 r是指定文件系统的根路径(版本库的根目录) 这样访问的时候不用输入完整路径即可访问
sudo svnserve -d -r /srv/svn
#例如svn://192.168.0.1/license_repository


启动完毕后,查看进程情况

ps -ef |grep svnserve


显示这条进程正在运行,即可通过客户端访问了,我是使用的windows系统上安装的svn访问的,创建一个想要把文件down到这里的文件夹,右键,选择checkout,在url一栏输入地址,例如svn://192.168.0.1/license_repository,然后确定,会提示输入账号密码,按照之前设置好的SVN账号密码即可使用,经过测试,admin组用户可以读写,而clientele组用户只能读不能写,实验成功.
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  ubutu svn