树莓派开发——搭建svn服务器

SVN配置及安装

1. 安装

# 安装
sudo apt-get install subversion
# 卸载
sudo apt-get remove --purge subversion
# 安装完成后,可做如下版本验证
svn help //--svn帮助
svn --version //--svn版本
svnserve --version //--svn server版本

2. 创建SVN版本库

# 创建目录及svn仓库
sudo mkdir /home/svn
sudo mkdir /home/svn/XWCode
sudo chmod -R 777 /home/svn/XWCode
sudo svnadmin create /home/svn/XWCode	#创建仓库
# 建完仓库则需对db进行权限设置,否则会系统报错
sudo chmod -R 777 db	# db是仓库建立后生成文件
# 或者直接对所有文件做权限设置均可

3. SVN配置

# 配置版本库
sudo nano /home/svn/XWCode/conf/svnserve.conf
# 配置信息
anon-access = none   
#控制非鉴权用户访问版本库的权限。取值范围为"write"、"read"和"none"。即"write"为可读可写,"read"为只读,"none"表示无访问权限。缺省值:read
auth-access = write 
#控制鉴权用户访问版本库的权限。取值范围为"write"、"read"和"none"。即"write"为可读可写,"read"为只读,"none"表示无访问权限。缺省值:write
# ============================================
password-db = passwd 
# 指定账户密码配置文件,当前文件夹下的passwd文件
authz-db = authz
# 权限配置文件,当前文件夹下的authz文件
# ============================================
realm = first    
#版本库的认证域,即在登录时提示的认证域名称。若两个版本库的 认证域相同,建议使用相同的用户名口令数据文件。缺省值:一个UUID(Universal Unique IDentifier,全局唯一标示)

配置文件,关于注释行的取消有两点注意:

  1. 定格配置,删除#后还要删除空格。
  2. 如上五条去掉注释即可,其他的不要乱动。不然无法访问。

4. 访问权限及用户创建

由上可知,账户密码配置文件位于当前文件夹下的passwd文件中。而权限的配置文件位于当前文件夹下的authz文件。

# 用户创建
[users]
# harry = harryssecret
# sally = sallyssecret
test=test123			# 一行一个 用户名=密码
zhangsan=san123
# 权限配置
[groups]
# harry_and_sally = harry,sally
# harry_sally_and_joe = harry,sally,&joe

# [/foo/bar]
# harry = rw
# &joe = r
# * =
admin=test		# 角色划分
user=ttt
# [repository:/baz/fuz]
# @harry_and_sally = rw
# * = r
[/]		# 一定不能忘记这一行
@admin=rw		# 权限配置,rw
@user=r

关于权限配置,一定不能忘记权限目录,否则无法访问

5. 启动及设置自动启动

svnserve -d -r /home/svn
# -d 表示守护线程后台运行 -r 表示指定目录
# 万万不可携程/home/svn/XWCode, 容易访问出错
# 查看是否启动成功
ps -ef|grep svnserve
# 结果为两个运行线程即代表启动成功。

# 自动启动,在/etc/rc.local 中添加如上启动语句即可

6. svn常见命令

# checkout 
svn co svn://...
# add当前目录下所有未添加的文件
svn add . --no-ignore --force
# 上传commit
svn ci -m "message"
# svn更新操作, cd到指定目录,直接命令即可
svn update
# 更换源地址
svn switch --relocate [旧地址] [新地址] 
# 删除操作
1. svn delete path -m "delete test file"
2. 	svn delete test.txt
	svn ci -m "delete test file"

你可能感兴趣的:(树莓派)