操作系统CentOS7.6
一、部署SVN服务端
RPM安装subversion 1.8.19
CentOS默认的rpm仓库安装的是1.7版本。这边通过配置RPM仓库来安装1.8版本的SVN
1.配置RPM仓库
先卸载操作系统上旧版的svn
1 2 3 4 5 6
| cat /etc/yum.repos.d/wandisco-svn.repo [WandiscoSVN] name=Wandisco SVN Repo baseurl=http://opensource.wandisco.com/centos/7/svn-1.8/RPMS/$basearch/ enabled=1 gpgcheck=0
|
2.RPM安装
1 2
| rpm -qa|grep -i subversion yum -y install subversion
|
1 2 3 4 5
| 如果出现错误:** [Errno 14] curl#6 - "Couldn't resolve host ..."** 则添加一个域名服务器: vi /etc/resolv.conf 添加一条: nameserver 8.8.8.8 yum clean all
|
二、配置版本库test(svn://方式访问)
1.创建目录结构
1 2 3 4 5 6 7 8 9
| mkdir -p /data/svn/{svn_data,svn_log,svn_pass,svn_trash}
[root@localhost svn]# ll total 0 drwxr-xr-x. 3 apache apache 31 Jan 21 16:59 svn_data # 项目版本库根目录 drwxr-xr-x. 2 apache apache 6 Jan 21 15:45 svn_log # 版本库日志目录 drwxr-xr-x. 3 apache apache 18 Jan 21 15:49 svn_pass # 多个版本库配置文件统一放这里 drwxr-xr-x. 2 apache apache 6 Jan 21 15:45 svn_trash
|
2.创建版本库test
1 2
| # 要在版本库根目录下创建 svnadmin create /data/svn/svn_data/test
|
3.配置文件
统一配置文件
把以下3个文件拷贝到/data/svn/svn_passwd
路径下,目的是多个版本间库共用用户账号与主配置文件:
svnserve.conf
- 版本库的主配置文件
passwd
- 添加用户账户、用户密码
authz
- 添加用户组、项目权限
1 2
| cp /data/svn/svn_data/conf/{authz,passwd,svnserve.conf} /data/svn_passwd/ # 把各个仓库下的authz,passwd文件放到一起,统一授权管理 chmod 700 /data/svn/svn_passwd/{authz,passwd} # 使用此种手工配置的SVN用户密码是明文,用svnmanage web页面来配置的密码是密文
|
配置svnserve.conf
1 2 3 4 5 6 7
| vim /data/svn/svn_data/conf/svnserve.conf [general] anon-access=none # 不允许匿名访问 auth-access=write # 允许的可以写 password-db = /data/svn/svn_passwd/passwd # 指定用户-密码的文件 authz-db = /data/svn/svn_passwd/authz # 指定用户权限的文件 realm = test Repo # 仓库名称
|
配置用户账号passwd
以这种passwd
svn自带的用户账号文件来启动的,svn客户端就是以svn://192.168.100.158/test
这种方式来访问服务端。
1 2 3
| vim /data/svn/svn_pass/passwd [users] 1330lyc = 123456
|
配置权限authz
1 2 3 4 5 6 7 8
| [groups] ops_test = 1330lyc,admin
[/] @ops_test = rw
[test:/] @ops_test = rw
|
4.启动SVN
1 2 3 4 5
| svnserve -d -r /data/svn/svn_data/ --config-file /data/svn/svn_pass/svnserve.conf
# -d 后台运行 # -r 版本库根目录路径 # --config-file 指定启动配置文件
|
5.配置服务启动脚本
1 2
| shell > vim /etc/init.d/svnserve OPTIONS="-r /data/svn/svn_data/ --config-file /data/svn/svn_passwd/svnserve.conf"
|
6.服务端查看svn仓库项目下的文件
1 2 3
| svn list --verbose file:///data/svn_data/sadoc/
--verbose 打印额外的信息
|
三、SVN客户端(svn://方式访问)
Windows客户端
1 2 3 4 5 6 7
| 安装:下载小乌龟svn客户端在Windows上安装,安装汉化版的语言包,全部下一步直至安装完成 连接:在d盘里新建一个文件夹:svn客户端---右击:选择:svn-checkout(检出,第一次操作,只有这个) 填上刚配的服务器的地址:svn://192.168.99.207/sadoc/ checkout的地址为:d:svn客户端 (推荐用域名,不用ip)采用默认:full recursive (完全递归) 输入用户名和密码:lyc1330,123456 (这时就会多出个文件夹,并且里面有.svn的隐藏文件) (能出现这一步:证明能连到服务器) 在这文件夹里新建一个文档(.svn文件夹的同级目录)(当成新代码提交) ,会到上级目录(svncheckout生成的目录):右键: ,commit(提交) 查看服务器上是否提交上去:右键(svncheckout生成的目录)--> TortoiseSVN ---> Repo-browser
|
Linux客户端
1.checkout检出
在第一次使用用checkout检出
1 2
| svn checkout svn://192.168.99.207/sadoc /data/oldgirl_svn3 --username=oldgirl --password=123456 svn co svn://192.168.99.207/sadoc /data/oldgirl_svn3 --username=oldgirl --password=123456
|
2.commit更新文件
先添加,在提交
1 2 3 4 5
| svn add * svn commit -m "oldgirl commit 2" svn ci -m "oldgirl commit 2"
-m tag描述,可以通过钩子来控制tag
|
3.update下载文件
1
| svn update svn://192.168.99.207/sadoc /data/oldgirl_svn --username=oldgirl --password=123456
|