1、安装软件
代码如下 | 复制代码 |
[root@bogon ~]# yum install subversion -y |
2、建立版本库目录
代码如下 | 复制代码 |
[root@bogon ~]# mkdir /svnroot //建立版本库目录 [root@bogon ~]# svnserve -d -r /svnroot //-r 表示把/svnroot 作为根目录,-d表示svnseve将会将会座位一个服务程序运行在后台 建立版本库创建一个新的svn项目 [root@bogon ~]# svnadmin create /svnroot/app |
3、配置
代码如下 | 复制代码 |
[root@bogon ~]# cd /svnroot/app/ [root@bogon app]# ls conf db format hooks locks README.txt [root@bogon app]# cd conf [root@bogon conf]# ls //配置文件存放位置 authz passwd svnserve.conf [root@bogon conf]# vi svnserve.conf anon-access = none # 匿名用户无权限 auth-access = write #权限用户可写 password-db = passwd #用户密码存放文件 authz-db = authz #用户权限文件 [root@bogon conf]# vi authz …… [groups] # harry_and_sally = harry,sally # harry_sally_and_joe = harry,sally,&joe group = qhy …… [/] qhy = rw * = [root@bogon conf]# vi passwd [users] # harry = harryssecret # sally = sallyssecret qhy = 123456 [root@bogon conf]# svn co svn://127.0.0.1/app 认证领域: <svn://127.0.0.1:3690> b44df301-1065-4582-8133-70b14c19286e “root”的密码: 认证领域: <svn://127.0.0.1:3690> b44df301-1065-4582-8133-70b14c19286e |
用户名: qhy
“qhy”的密码:
-----------------------------------------------------------------------
注意! 你的密码,对于认证域:
<svn://127.0.0.1:3690> b44df301-1065-4582-8133-70b14c19286e
只能明文保存在磁盘上! 如果可能的话,请考虑配置你的系统,让 Subversion
可以保存加密后的密码。请参阅文档以获得详细信息。
你可以通过在“/root/.subversion/servers”中设置选项“store-plaintext-passwords”为“yes”或“no”,
来避免再次出现此警告。
-----------------------------------------------------------------------
保存未加密的密码(yes/no)?yes
取出版本 0。
--------------------------------------------------------------------------------
客户端:
客户端需要安装subversion。
错误1:svn: 无法连接主机“172.16.10.63”: 没有到主机的路由
原因是服务器防火墙没有关,可以关掉防火墙,或者 vi /etc/sysconfig/iptables加上一条
-A INPUT -m state --state NEW -m tcp -p tcp --dport 3690 -j ACCEPT
重启防火墙就OK了
第一次登陆svn服务器会将密码信息存放在用户路径下的.subversion文件夹下,路径为/root/.subversion/。
[root@bogon ~]# svn co svn://172.16.10.63/app
//co为checkout的简写,即提取
认证领域: <svn://172.16.10.63:3690> b44df301-1065-4582-8133-70b14c19286e
“root”的密码:
认证领域: <svn://172.16.10.63:3690> b44df301-1065-4582-8133-70b14c19286e
用户名: qhy
“qhy”的密码:
-----------------------------------------------------------------------
注意! 你的密码,对于认证域:
<svn://172.16.10.63:3690> b44df301-1065-4582-8133-70b14c19286e
只能明文保存在磁盘上! 如果可能的话,请考虑配置你的系统,让 Subversion
可以保存加密后的密码。请参阅文档以获得详细信息。
你可以通过在“/root/.subversion/servers”中设置选项“store-plaintext-passwords”为“yes”或“no”,
来避免再次出现此警告。
-----------------------------------------------------------------------
保存未加密的密码(yes/no)?yes
取出版本 0。
[root@bogon ~]# ls
app
//操作成功后会在当前目录生成app目录
[root@bogon ~]# cp 1.sql app/ //将需要控制版本的文件copy到checkout出来的项目目录中
[root@bogon ~]# cd app
[root@bogon app]# svn add 1.sql //将1.sql添加到版本库
A 1.sql
//修改并更新文件
[root@bogon app]# echo "#apptest" >>1.sql
[root@bogon app]# svn update
//将最后版本更新到本地
版本 0。
[root@bogon app]# svn commit -m "first.test" 1.sql
//将本地最新版本提交到服务器,并成为服务器最新版本注释为first.test,commit可以简写为ci
增加 1.sql
传输文件数据.
提交后的版本为 1。
--------------------------------------------------------------------------------
[root@bogon app]# svn update -r 1
//下载第一个版本到本地
版本 1。
[root@bogon app]# echo "#twotest" >>1.sql
[root@bogon app]# svn update
版本 1。
[root@bogon app]# svn commit -m "two.test" 1.sql
正在发送 1.sql
传输文件数据.
提交后的版本为 2。
--------------------------------------------------------------------------------
windows客户端
http://xiazai.xiazaiba.com/Soft/T/TortoiseSVN_1.7.11.23600_x86_XiaZaiBa.zip
具体操作与linux相似目录url为:svn://172.16.10.63/app
--------------------------------------------------------------------------------
维护阶段:
[root@bogon conf]# vi authz
……
[groups]
# harry_and_sally = harry,sally
# harry_sally_and_joe = harry,sally,&joe
group = qhy
……
[/]
qhy = rw
* =
[root@bogon conf]# vi passwd
[users]
# harry = harryssecret
# sally = sallyssecret
qhy = 123456
svnserve.conf
[general]配置段中配置行格式如下:
<配置项> = <值>
passwd
[users]配置段的配置行格式如下:
<用户名> = <口令>
注意:配置行中的口令为未经过任何处理的明文。
authz
[groups]配置段中配置行格式如下:
<用户组> = <用户列表>
版本库路径权限段的段名格式如下:
[<版本库名>:<路径>]
版本库路径权限段中配置行格式有如下三种:
<用户名> = <权限>
<用户组> = <权限>
* = <权限>