linux环境搭建SVN,新建仓库,配置成员权限,服务启动,仓库检出

svn安装:

centos下

yum install subversion

Ubuntu下

apt-get install subversion

服务端命令:
svnserver:控制svn系统服务的启动等
svnadmin:版本库的创建、导出、导入、删除等
svnlook:查看版本库的信息等

客户端命令:
svn:版本库的检出、更新、提交、重定向等

在/root/hbk/目录创建一个本地SVN仓库(svnserver)

[root@localhost hbk]# pwd
/root/hbk
[root@localhost hbk]# svnadmin create svnserver

可以看到自动新建了一些目录及文件

[root@localhost hbk]# cd svnserver/
[root@localhost svnserver]# tree .
.
├── conf
│   ├── authz
│   ├── passwd
│   └── svnserve.conf
├── db
│   ├── current
│   ├── format
│   ├── fsfs.conf
│   ├── fs-type
│   ├── min-unpacked-rev
│   ├── revprops
│   │   └── 0
│   │       └── 0
│   ├── revs
│   │   └── 0
│   │       └── 0
│   ├── transactions
│   ├── txn-current
│   ├── txn-current-lock
│   ├── txn-protorevs
│   ├── uuid
│   └── write-lock
├── format
├── hooks
│   ├── post-commit.tmpl
│   ├── post-lock.tmpl
│   ├── post-revprop-change.tmpl
│   ├── post-unlock.tmpl
│   ├── pre-commit.tmpl
│   ├── pre-lock.tmpl
│   ├── pre-revprop-change.tmpl
│   ├── pre-unlock.tmpl
│   └── start-commit.tmpl
├── locks
│   ├── db.lock
│   └── db-logs.lock
└── README.txt

10 directories, 27 files

其中conf目录保存的仓库配置信息
svnserve.conf:守护进程配置文件
authz :保存了用户名和权限
passwd :保存了用户名的密码
hooks-env.tmpl :钩子脚本环境配置文件

修改svnserv.conf文件如下:

[root@localhost conf]# egrep -v "#|^$" svnserve.conf 
[general]
anon-access = none
auth-access = write
password-db = passwd
authz-db = authz
[sasl]

anon-access 设置none表示不允许匿名访问。

修改auth文件

[root@localhost conf]# egrep -v "#|^$" authz 
[aliases]
[groups]
harry_and_sally = harry,sally
[/]
@harry_and_sally = rw
* = r

表示创建两个用户并组成
一个group,并给予此group所有成员
根目录的读写权限

[root@localhost conf]# egrep -v "#|^$" passwd 
[users]
harry = 123
sally = 123

设置harry和sally的密码

启动svn服务器(默认端口3690)

[root@localhost conf]# svnserve  -d -r /root/hbk/svnserver/
[root@localhost conf]# ps -ef|grep svn
root      92720      1  0 15:17 ?        00:00:00 svnserve -d -r /root/hbk/svnserver/
root      92726  90481  0 15:17 pts/1    00:00:00 grep --color=auto svn

对于多版本库,启动的时候需要改变端口

svnserv -d -r /root/hello --listen-port 3691

检出仓库,我本地虚拟机地址为192.168.8.194

[root@localhost test]# svn checkout svn://192.168.8.194
认证领域: <svn://192.168.8.194:3690> 9bd6fb08-55de-4064-be47-656f60e6e79a
“root”的密码: 
认证领域: <svn://192.168.8.194:3690> 9bd6fb08-55de-4064-be47-656f60e6e79a
用户名: harry
“harry”的密码: 

-----------------------------------------------------------------------
注意!  你的密码,对于认证域:

   <svn://192.168.8.194:3690> 9bd6fb08-55de-4064-be47-656f60e6e79a

只能明文保存在磁盘上!  如果可能的话,请考虑配置你的系统,让 Subversion
可以保存加密后的密码。请参阅文档以获得详细信息。

你可以通过在“/root/.subversion/servers”中设置选项“store-plaintext-passwords”为“yes”或“no”,
来避免再次出现此警告。
-----------------------------------------------------------------------
保存未加密的密码(yes/no)?no
取出版本 0。
[root@localhost test]# ls -a
.  ..  .svn

可以看到一个隐藏文件目录.svn

也可以在检出的时候带上用户名和密码
举例:

svn checkout svn://192.168.8.194 --username harry --password 123

检出目录名称自定义

svn co svn://192.168.8.194:3691 hello3691

检出checkout 和export的区别参考 https://blog.csdn.net/huangbaokang/article/details/89381869

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

黄宝康

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值