我使用的本地软件是SecureCrt来远程控制我的云服务器。
1.安装软件: yum -y install subversion
2.查看svn版本: svn --version
2.1. 注意:另外在安装之前也可以检测是否已经安装过旧版本,可将旧版本卸载之后重新安装。
2.2. 检查已安装版本:rpm -qa subversion
2.3 卸载旧版本 SVN: yum remove subversion
3.创建一个新的文件夹为SVN文件夹(用来提交和存放代码):mkdir -p /data1/svn/curstom_projs
4.把该SVN文件夹设置成SVN的文件仓库:svnadmin create /data1/svn/curstom_projs
5.配置参数:
5.1 进入该文件夹中 cd /data1/svn/curstom_projs
(这个文件夹中的 conf 文件夹中有三个配置文件:authz,passwd,svnserver.conf )
authz:权限控制,可以设置哪些用户可以访问哪些目录;
passwd:设置用户和密码;
svnserve.conf:设置svn相关的操作,生成的文件中都有英文注释说明。
5.2 配 置 svnserv.conf 修改配置信息: vi /data1/svn/curstom_projs/conf/svnserve.conf
修改下列参数:(修改参数要注意去掉#[注释],并且顶到最左边,不留空格)
anon-access = none (使非授权用户无法访问)
auth-access = write (使授权用户有写权限)
password-db = passwd (用户密码文件)
authz-db = authz (访问控制文件)
realm = /data1/svn/curstom_projs (认证命名空间,subversion 会在认证提示里显示,并且作为凭证缓存的关键字。)
5.3 配置 passwd(格式:帐号=密码): vi /data1/svn/curstom_projs/conf/passwd
添加数据:username=123456(需要加的地方)
5.4 注意:这里的用户有svn协议才能使用svn;
5.5 配置 authz 权限: vi /data1/svn/curstom_projs/conf/authz
添加数据:( 该用户有读写权限但是只能访问对应的文件(curstom_projs)下的内容,r:读,w:写 )
[/]
username = rw
[/curstom_projs]
username=rw
6.设置数据提交权限:( 其中-d是启动daemon用户,所以需要设置该用户权限 )
6.1 sudo chown -R daemon /data1/svn/curstom_projs
6.2 sudo chmod -R 755 /data1/svn/curstom_projs
7. 启动svn
7.1 svnserve -d -r /data1/svn --listen-port 10010
(其中端口号就是10010,要记得在阿里云上配置端口,不会的话可以看我上一篇博客)
7.2 netstat -ntlp (查看端口信息)
7.3 yum install net-tools (如果找不到netstat命令)
8.最后,我们就可以通过 ("svn://ip:port/curstom_projs"),来访问自己的svn服务器了。