文章目录
- (1)SVN概述
- (2)SVN与Samba共享
- (3)安装SVN
- (4)SVN搭建实例
- (5)pc连接svn服务器
- (6)svn图标所代表含义
(1)SVN概述
SVN(Apache Subversion)是一个开放源代码的版本控制系统,用于管理和跟踪文件和目录的变化。它采用分支管理系统,并旨在取代CVS。以下是关于SVN安装和搭建的基本概述以及Windows连接的步骤:
(2)SVN与Samba共享
SVN还可以用作于企业内部共享,之前就这么干过,其实还行,如果文件大,对本地机器不太友好,但是好处就是存在多个备份。
相对于Samba共享,它具有一些不同的优势。以下是SVN相对于Samba共享的一些优势:
- 版本控制功能:SVN是一个专门为版本控制而设计的工具,它可以跟踪和管理文件和目录的变化,记录每个版本的修改历史,并支持回滚到以前的版本。这使得团队成员可以轻松地协同工作、共享和管理文件,并且可以方便地查看和比较不同版本之间的差异。
- 文件锁定机制:SVN提供了文件锁定机制,可以防止多个用户同时编辑同一个文件而引起的冲突。当一个用户锁定文件时,其他用户无法编辑该文件,从而避免了冲突和数据丢失的风险。这对于团队合作和协同开发非常有用。
- 权限控制:SVN提供了灵活的权限控制机制,可以根据用户和用户组设置不同的访问权限。管理员可以精确地控制用户对仓库和文件的读写权限,从而确保敏感数据的安全性和保密性。
- 分支和合并:SVN支持分支和合并操作,可以创建和管理不同的分支,使团队可以同时进行不同的开发工作。分支可以独立开发和测试,然后合并回主线,从而实现并行开发和代码管理的灵活性。
- 更精细的版本控制:SVN可以跟踪文件和目录的每个修改,包括添加、删除、重命名和移动等操作。这使得团队可以更精细地控制和管理文件的变化,以及查看和恢复到特定的修改点。
总的来说,SVN相对于Samba共享在版本控制、文件锁定、权限控制、分支和合并等方面提供了更强大和灵活的功能,适用于需要更高级别文件管理和协作的企业内部共享环境。
(3)安装SVN
- 检查防火墙状态:
systemctl status firewalld.service
- 关闭防火墙:
systemctl stop firewalld.service
- 检查是否已安装SVN:
rpm -qa subversion
- 查看已安装版本的详细信息:
svnserve --version
- 如果未安装SVN,使用以下命令安装:
yum install subversion -y
(4)SVN搭建实例
-
修改svnserve.conf配置文件:
- 打开配置文件:
vi /home/Admindept/conf/svnserve.conf
- 去除以下注释:
anon-access=none
(匿名用户不可访问)auth-access=write
(授权用户可写)password-db=passwd
(使用哪个文件作为账号文件)authz-db=authz
(使用哪个文件作为权限文件)realm=/home/Admindept
(认证空间名,设置版本库所在目录)
- 打开配置文件:
-
创建项目:
- 创建hr项目:
svnadmin create /home/Admindept
- 创建ops项目:
svnadmin create /home/opertion
- 创建hr项目:
-
启动SVN服务:
- 默认使用3690端口:
svnserve -d -r /home/Admindept/
- 如果启动第二个SVN需要指定3691端口:
svnserve -d -r /home/opertion/ --listen-port 3691
- 默认使用3690端口:
-
添加用户和密码:
- 打开passwd文件:
vi /home/Admindept/conf/passwd
- 在文件中添加用户和密码,例如:
josh = josh@2023#
、annie = annie@2023#
- 打开passwd文件:
-
设置控制权限:
-
打开authz文件:
vi /home/Admindept/conf/authz
-
在文件中设置权限,例如:
hr = annie,josh ops = josh[/] @ops = rw @hr = rw[/hr] @hr = rw @ops = rw *=
-
-
关于配置文件的介绍:
- authz:权限控制文件,用于授权用户和组。
- passwd:帐号密码文件,用于连接SVN仓库。
- svnserve.conf:SVN服务配置文件,设置访问控制和认证空间。
(5)pc连接svn服务器
TortoiseSVN在windows非常受到欢迎的一套客户端软体,它与档案总管整合得相当不错,可以透过档案总管在档案或目录上用滑鼠右键的选单完成SVN的操作。
1. 安装TortoiseSVN客户端
svn客户端软件获取地址:http://tortoisesvn.net/downloads/
2. svn客户端安装
双击软件包进行安装,然后下一步下一步直至安装结束即可。
next
3. 使用svn客户端
注意:SVN客户端安装完成之后,需要重启客户端主机。
连接步骤如下:
-
连接SVN服务器,本地创建一个用于存放svn本地仓库的文件夹,右击选择:SVN Checkout
-
连接到SVN服务器:
svn://192.168.217.128:3690/
输入SVN的账户密码
如果内容较多,可能需要等待…拉取
(6)svn图标所代表含义
- 常规图标:当客户端文件和服务端文件完全同步时,显示以上图标
- 冲突图标:当客户端提交的文件和服务器端数据有冲突
- 删除图标:当服务端数据已删除,客户端该文件显示以上图标
- 增加图标:当我们编写的文件添加到提交队列,系统自动显示
- 无版本控制图标:当我们编写的文件没有添加到上传队列时
- 修改图标:当有文件有修改但未提交
- 只读图标:当客户端文件以只读形式存在时
- 锁定图标:当服务端数据已锁定,客户端自动显示
- 忽略图标:客户端文件已忽略,不需要进行提交上传
- 忽略功能如何只忽略某个指定文件,效果如下:
忽略某一类型的文件,如excel的.xlsx文件