赞
踩
Subversion(简称为SVN)是一种版本控制系统,能够管理和跟踪项目开发中的代码变化。Subversion最初由CollabNet公司开发,现已成为Apache软件基金会的顶级项目之一。
Subversion使用一个中央仓库来存储所有项目文件和历史记录。开发人员可以在本地副本上进行修改,然后提交到中央仓库中。Subversion会自动跟踪所有的变更并记录历史记录,同时允许开发人员回滚到以前的版本。
Subversion支持分支和合并功能,可以对大型项目进行并行开发和管理。此外,Subversion还提供了安全性、权限管理以及集成性的API,使其能够与其他工具和开发环境无缝集成。
Subversion和Git是两种版本控制系统,它们之间的主要区别在于以下几点:
1. 分布式 vs 集中式:Git是一种分布式系统,而Subversion是一种集中式系统。这意味着使用Git时,每个用户都拥有完整的版本库的副本,因此即使在没有网络连接到主服务器的情况下也可以工作。而Subversion需要连接到中央服务器来获得完整的版本控制。这使得Git更适合大型开发团队和开源项目。
2. 分支管理:Git在分支管理方面比Subversion更强大和灵活。Git的分支非常轻量级,创建和合并分支比Subversion更容易。在Subversion中,分支是完整的目录副本,因此更加笨重。
3. 性能:由于Git的分布式设计,其网络性能比Subversion更好。Git允许在本地缓存一些文件和历史记录,因此在大型项目中比Subversion快得多。
4. 文件名大小写敏感:Git对待文件名的大小写敏感,而Subversion在某些平台上对待文件名的大小写不敏感。
5. 描述性提交:Git鼓励编写清晰、易于理解的提交注释,而Subversion则没有这样的要求。在Git中,提交注释非常重要,因为它们可以用来描述项目中的重要变更。
总之,Subversion和Git都是很好的版本控制系统,但它们在一些方面有所不同。选择哪种系统取决于您的项目需求和个人偏好。
以下是Subversion的安装配置步骤:
1、安装apr-util
#yum install apr-util apr-util-devel
2、安装sqlite
#yum install sqlite sqlite-devel
3、安装zlib
- #tar zxf zlib-1.2.8.tar.gz
- #cd zlib-1.2.8
- #./configure
- #make && make install
4、解压subversion
- #tar -xvzf subversion-1.9.3.tar.gz
- #cd subversion-1.9.3/
- #./configure --prefix=/usr/local/subversion --with-zlib=/usr/local/src/zlib-1.2.8
- #make
- #make install
5、添加到环境变量
- vi /etc/profile
- source /etc/profile
6、创建库
- #svnadmin create /usr/local/subversion
- #cd /usr/local/subversion/conf
- #vi svnserve.conf
-
- anon-access = none //改成none
- auth-access = write
- password-db = passwd
- realm = my_dev //改成组
-
- #vi authz //文件,创建svn组和组用户的权限
- my_dev = admin
-
- #vi passwd
- admin= admin@123
启动svn:
- svnserve -d -r /hisc/local/subversion
- 然后要设置自启动
- vi /etc/rc.local 打开自启动文件添加
- /usr/local/subversion/bin/svnserve -d -r /hisc/local/subversion
- netstat -tnl |grep :3690 查看svn是否启动
- ps aux |grep 'svn' 查找所有svn启动的进程
备份svn库(在旧环境上操作)
#svnadmin dump /mnt/svnrepos/ > /mnt/svn_bak20150921
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。