博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
centos6.5部署subversion(svn)
阅读量:6192 次
发布时间:2019-06-21

本文共 3154 字,大约阅读时间需要 10 分钟。

SVN默认端口:3690

svnserve -d -r/home/declan/svnproject--listen-port 21  #修改svn监听端口

一、安装svn

yum install subversion -y

二、检查是否安装成功

svnserver --version

svnserve, version 1.6.11 (r934486)

compiled Aug 17 2015, 08:37:43

Copyright (C) 2000-2009 CollabNet.

Subversion is open source software, see http://subversion.tigris.org/
This product includes software developed by CollabNet (http://www.Collab.Net/).

The following repository back-end (FS) modules are available:

* fs_base : Module for working with a Berkeley DB repository.

* fs_fs : Module for working with a plain file (FSFS) repository.

Cyrus SASL authentication is available.

#ok,安装成功,svn版本为1.6.11

三、创建代码仓库

mkdir -p /opt/svn/bokeyuan-xsj    #新建一个目录作为仓库svnadmin create /opt/svn/bokeyuan-xsj/    #创建svn仓库

进入仓库查看如出现下面的图片所示的目录和文件,则创建成功

四、配置svn服务器

仓库conf目录下有三个文件,passwd、authz、svnserver.conf

#passwd     :存放用户和密码文件#authz      :存放用户权限文件#svnserver.conf:svn主配置文件

4.1修改passwd,添加用户密码

vim passwd[users]xushijie = bokeyuan.xsj  #格式:用户名 = 密码

4.2修改authz,添加用户权限

[bokeyuan-xsj:/]  #为一个项目配置用户权限xushijie = rw    #设置开发者为读写权限 #这里也可以定义用户组
[groups]#格式:user-group = usernamegroups1 = username1 #将用户1添加到开发组groups2 = username2 #将用户2添加到设计组
[bokeyuan-xsj:/] @username1 = rw @username2 = r

4.3修改svnserver.conf

vim svnserver.confanon-access = none   #去掉注释,修改匿名用户访问权限auth-access = write  #去掉注释,验证用户权限password-db = /var/svn/projectname/passwd #去掉注释,指定密码文件路径authz-db = /var/svn/project/authz #去掉注释,指定权限文件的路径

五、启动svn服务

svnserver -d -r /opt/svn/    # -r:svn仓库目录,-d:使用守护进程

还有一种方法启动,编辑启动脚本

vim /etc/init.d/svnserve args="--daemon --pid-file=${pidfile} -r /opt/svn $OPTIONS"  #编辑svn启动目录 -r /opt/svn

六、测试

使用三台机器

svn :192.168.1.198

开发:192.168.1.199

运维:192.168.1.200

6.1在192.168.1.199上创建三个目录

mkdir trunk branches tags  #创建主干目录和分支目录

6.2创建三个文件导入到trunk上,提交到版本库中

echo a > trunk/a.txtecho b > trunk/b.txt svn import ./ svn://192.168.1.198/bokeyuan-xsj -m "n1"  #将创建的目录添加到版本库中 Password for 'xushijie':  #输入你在passwd中创建的密码

6.3在192.168.1.200上把trunk目录下载下来

svn checkout svn://192.168.1.198/bokeyuan-xsj

七、svn版本库常用命令:

1、将文件checkout到本地目录

svn checkout path(path是服务器上的目录)
例如:svn checkout svn://192.168.1.1/pro/domain
简写:svn co
2、往版本库中添加新的文件
svn add file
例如:svn add test.php(添加test.php)
svn add *.php(添加当前目录下所有的php文件) 
3、将改动的文件提交到版本库
svn commit -m “LogMessage“ [-N] [--no-unlock] PATH(如果选择了保持锁,就使用–no-unlock开关)
例如:svn commit -m “add test file for my test“ test.php
简写:svn ci
4、更新到某个版本
svn update -r m path
例如:
svn update如果后面没有目录,默认将当前目录以及子目录下的所有文件都更新到最新版本。
svn update -r 200 test.php(将版本库中的文件test.php还原到版本200)
svn update test.php(更新,于版本库同步。如果在提交的时候提示过期的话,是因为冲突,需要先update,修改文件,然后清除svn resolved,最后再提交commit)
简写:svn up 
5、删除文件
svn delete path -m “delete test fle“
例如:svn delete svn://192.168.1.1/pro/domain/test.php -m “delete test file”
或者直接svn delete test.php 然后再svn ci -m ‘delete test file‘,推荐使用这种
简写:svn (del, remove, rm)
6、查看文件详细信息
svn info path
例如:svn info test.php
7、比较差异
svn diff path(将修改的文件与基础版本比较)
例如:svn diff test.php
svn diff -r m:n path(对版本m和版本n比较差异)
例如:svn diff -r 200:201 test.php
简写:svn di 
8、将两个版本之间的差异合并到当前文件
svn merge -r m:n path
例如:svn merge -r 1:2 test.php(将版本1与2之间的差异合并到当前文件,但是一般都会产生冲突,需要处理一下)

转载于:https://www.cnblogs.com/linux-xsj/p/6693525.html

你可能感兴趣的文章
安卓飞机大战(二) SurfaceView实现自制背景
查看>>
新手学习之查看ORACLE 数据库表空间和数据表的大小
查看>>
Python-工具安装
查看>>
我的友情链接
查看>>
LVM的综合性介绍及实现
查看>>
DNS服务器中很重要的几个搭建配置---不看后悔哦
查看>>
CAP理论
查看>>
Skype for Business Server 2015-02-Office Web Apps-部署
查看>>
Skype for Business Server 2015-03-后端服务器-3-验证
查看>>
Docker容器部署时区问题的坑
查看>>
ASP.NET MVC ModelState与数据验证【转】
查看>>
win10 中xshell输入中文显示问号问题
查看>>
华为产品升级及打补丁具体步骤
查看>>
There is already an open DataReader associated with this Command which must be closed first
查看>>
【记录】mysql使用like匹配数据时关于通配符的使用误区
查看>>
activemq安全设置 设置admin的用户名和密码
查看>>
负载均衡方案对比表
查看>>
zabbix3配置阿里云邮箱告警
查看>>
Java的类的创建
查看>>
centos学习(之一)-centos6.6环境搭建
查看>>