Linux 下 svn 版本库的创建与使用

使用yum install -y subversion命令安装 svn 版本库

Linux 下 svn 版本库的创建与使用_第1张图片

软件安装完成后,则开始创建版本库。按照习惯,我们的版本库放在/var/www/svn下面。项目名称叫做aaa(我是随意起的)。
mkdir /var/www/svn
chmod 777 /var/www/svn
cd /var/www/svn
创建一个svn版本仓库  项目名称叫做可以随便起(aaa)以下案例我就以我的项目为例
svnadmin create /var/www/svn/aaa

进入项目目录 aaa下的 conf 目录 

cd /home/svn/project/conf

在配置目录 conf 下有3个配置文件

进行版本库用户创建工作。首先分配基本的用户,在这里要注意,所有的设定行,一定要顶格写。如图中创建一个用户和密码。左边是用户,右边是密码。
编辑 vim passwd

Linux 下 svn 版本库的创建与使用_第2张图片

创建用户组,这样权限分配的时候针对用户组即可。这里设定了一个叫做 phpf 的用户组,并将刚才建立的用户加入该用户组。并设置该用户组对版本库可读写。
创建svn组和组用户的权限
vim authz

Linux 下 svn 版本库的创建与使用_第3张图片

设置配置文件。该设置文件主要是指定是否许可匿名访问,以及用户、用户组权限等配置文件的路径等信息。基本上直接将行首注释去掉即可(只去除前5个),效果如下图。

Linux 下 svn 版本库的创建与使用_第4张图片

启动SVN服务器命令:svnserve -d -r /var/www/svn/aaa

使用svn co svn://localhost /var/www/html/aaa 命令将版本库复制到本地 co 是 checkout 简写

绿色地址是svn服务器地址,黄色地址是要检出的目标地址
在此过程中,会要求用户输入当前登录用户的密码,svn用户名,svn密码等信息。
由于这里没有设置本地密码存储加密,所以还会有一个安全警告。
由于这个地方只是进行版本库是否安装成功的验证,所以可以忽略这个警告。此时获得的版本库版本号为0

Linux 下 svn 版本库的创建与使用_第5张图片

为了方便可以设置自启动

编辑 vi /etc/rc.d/rc.local    打开自启动文件添加

把这句填到里面  /usr/bin/svnserve -d -r /usr/local/svn/

Linux 下 svn 版本库的创建与使用_第6张图片

以下是 svn 基本操作命令

1、将文件checkout到本地
svn checkout path(path是服务器的目录)
例如 :svn checkout svn://localhost  /var/www/html/aaa
2、往版本库中添加新的文件
svn add 文件
例如:svn add test.php
3、将改动的文件提交到版本库
svn commit -m "注释" [-N] [--no-unlock] PATH(如果选择了保持锁,就使用--no-unlock开关)
例如:svn commit -m "注释" test.php
简写:svn ci
4、加锁/解锁
svn lock -m "注释" path
例如: svn lock -m "注释" test.php
svn unlock path
5、更新到某个版本
svn update -r 版本号 path
svn update 更新当前目录以及子目录下的所有文件到最新版本
svn upate -r 200 test.php 将版本库中的test.还原到版本200
简写 svn up
6、查看文件或者目录状态
(1)svn status path (显示目录下的文件和子目录下的文件状态,正常状态不显示)
【?:不在svn控制中;M:内容被修改;C:发生冲突;A:预定义加入到版本库;K:被锁定】
(2)svn status -v path (显示文件和子目录状态)
注意:svn status、svn diff和svn revert这三条命令在没有网络情况下可以执行,因为svn在本地.svn中保留了本地版本原始拷贝。
简写: svn st
7、删除文件
svn delete path -m "注释"
例如: svn delete svn://localhost/aaa/test.php -m "delete test file"
或者直接svn delete test.php 然后再svn ci -m 'delete test file‘,推荐使用这种
简写: svn (del、remove、rm)
8、查看日志
svn log path
9、查看文件详细信息
svn info path
10、比较差异
svn diff path(将修改的文件与基础版本比较)
svn diff -r m:n (将修改的文件m版本和n版本比较)
简写 svn di

 

 

你可能感兴趣的:(Linux)