LinuxSVN服务器搭建及客户端使用

服务器搭建

安装

sudo apt-get install -y subversion
svnserve --version

创建仓库

cd /home
sudo mkdir svn
sudo svnadmin create svntest001

配置文件

authz 是权限控制文件 passwd 是帐号密码文件 svnserve.conf 是SVN服务配置文件

authz
[groups]	#用户组
group1 = user001,user002
group2 = user003,user004
[svntest001:/]	#svntest001为svn服务目录的递归目录
@group1 = rw	#用户user001,user002可读写
@group2 = r	#用户user001,user002可读
user005 = rw #用户user005可读写
* =	#其余用户无权限
passwd
[users]
user001 = xxxxxx	#为auth中定义的用户附上密码
user002 = xxxxxx
user003 = xxxxxx
user004 = xxxxxx
user005 = xxxxxx
svnserve.conf
anon-access = read    # 匿名用户可读
auth-access = write    # 授权用户可写
password-db = passwd    # 使用哪个文件作为账号文件
authz-db = authz    # 使用哪个文件作为权限文件
realm = Ensk's SvnRep    # 版本库认证域 , 使用 SVN 客户端访问时 , 会出现在提示信息中 , 最好自定义下域的标志以方便辨别库

启动服务

sudo svnserve -d -r /home/svn
sudo svnserve -d -r /home/svn --listen-port xxxx
SVN服务的默认默认端口为3690,默认端口修改一般应用在需要建立多个svn服务器的情况,多版本库

客户端连接

版本库导出

svn co svn://127.0.0.1/svntest001默认端口情况 或
svn co svn://127.0.0.1:xxxx/svntest001

添加未加入版本管理的文件
mkdir folder001
svn add folder001/

最好在文件夹创建时就将其加入到版本库,否则在其子文件不需要全部加入到版本控制时会造成麻烦

查看日志

svn log按顺序列出各版本信息
svn log -r xxx -v 列出第xxx个版本的详细信息
svn log -r xxx -q 列出第xxx个版本的简略信息
svn log -r xxx:yyy 列出第xxx至yyy版本间的信息
svn log -r {xxxx-xx-xx}:{yyyy-yy-yy} 列出xxxx年xx月xx日至yyyy年yy月yy日之间的版本日志
以上需要在已加入版本控制的目录下执行,若需要直接查看某svn版本库的日志,则执行:
svn log svnurl

取消

取消文件
svn revert 文件名
取消目录
svn revert --depth=infinity 目录名

版本提交

svn ci -m "注释" #-m的内容会加显示在日志中

版本回退

1.将本地项目更新到最新状态,svn update,得到最新版本xx
2.然后找出要回滚的确切版本号,svn log,得到需要回退的版本yy
3.回滚到需要版本号,svn merge -r xx:yy"",为了保险起见,再次确认回滚的结果,svn diff ""
发现正确无误,提交。
4.确认无误后提交回滚,svn commit -m "Revert revision from xx to yy,due to ...",上传到版本xx+1

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值