如何使用Apache dav_svn在CentOS 7上安装SVN
1.1 SVN-An概述
通常以缩写形式被称为SVN(以命名名称SVN命名)的Apache Subversion是一种流行的软件版本控制和版本控制系统,它作为Apache许可下的免费软件分发。开发人员主要用于维护文档,源代码和网页等现有和历史文件版本,主要目标是成为广泛使用的CVS(并发版本系统)的兼容后继。事实上,Subversion已被自由软件社区广泛使用。本教程介绍如何在CentOS 7上安装和使用SVN。1.2在CentOS 7上安装和使用SVN的分步指南
下面列出了在CentOS 7上安装和使用SVN和mod_dav_svn的步骤:1.2.1安装软件包
要进行安装过程,您需要使用以下命令安装subversion和mod_dav_svn(代表用于subversion服务器的Apache httpd模块):yum install httpd subversion mod_dav_svn这些通常由默认CentOS Updates存储库提供。一旦完成,您现在可以进入下一步了。
1.2.2配置Subversion
安装软件包后,您必须打开subversion httpd配置文件/etc/httpd/conf.modules.d/10-subversion.conf
,并进一步编辑它(如下所示):
vi /etc/httpd/conf.modules.d/10-subversion.conf
LoadModule dav_svn_module modules/mod_dav_svn.so
LoadModule authz_svn_module modules/mod_authz_svn.so
LoadModule dontdothat_module modules/mod_dontdothat.so ##Add the following lines ##
Alias /svn /var/www/svn
<Location /svn>
DAV svn
SVNParentPath /var/www/svn/
AuthType Basic
AuthName "Subversion repositories"
AuthUserFile /etc/svn-auth-users
Require valid-user
</Location>
虽然在上述配置中,您已经设置了Apache来加载dav_svn_module,除了使用htpasswd设置基本的Web身份验证之外,下一步需要您创建一个新用户。
1.2.3设置新用户
在这里,您需要键入以下htpasswd命令来创建新用户:htpasswd -cm /etc/svn-auth-users john请注意,您必须首次使用-c选项创建密码文件,就好像最后再次使用它,将导致覆盖当前文件。因此,如果您想添加其他用户,可能会错过-c选项,并使用m选项更改用户名,如下所述:
htpasswd -m /etc/svn-auth-users jane-m选项对密码使用MD5加密。
1.2.4创建和配置Subversion存储库
作为下一步,您需要创建一个目录,并使用svnadmin创建存储库结构(如下所示)。这实际上是您的Subversion存储库将被停放,因此这仍然是一个重要的步骤。mkdir /var/www/svn
cd /var/www/svn/
svnadmin create repo
chown -R apache.apache repo/
如果您的服务器上启用了SELinux,则可以使用这些命令访问我们的存储库“repo”。
chcon -R -t httpd_sys_content_t /var/www/svn/repo
chcon -R -t httpd_sys_rw_content_t /var/www/svn/repo
并打开防火墙中的http和https端口
firewall-cmd --permanent --zone=public --add-service=http
firewall-cmd --permanent --zone=public --add-service=https
firewall-cmd --reload
然后启动apache启动时启动它重新启动:
systemctl enable httpd.service
systemctl restart httpd.service
1.2.5从浏览器检查
完成上述步骤后,您必须使用浏览器检查以下路径: http:// localhost / svn / repo这应该会抛出一个身份验证对话框,您需要使用以前使用htpasswd命令创建的登录凭据。在以正确的方式填写所有细节后,您将被引导到一个空的资料库。一旦创建了空的存储库,您可以转到需要管理存储库的下一步。1.2.6管理存储库
以下步骤说明管理存储库的过程。1.2.6(a)创建存储库
为了学习管理存储库的端到端流程,您必须先创建一个示例存储库。首先,您必须设置一个目录并将所有内容放在那里(如下所述),然后您可以将它们导入到svn中:cd /tmp
mkdir firstproject
cd firstproject
作为测试,我们创建一些文件shere
touch testfile1 testfile2通过创建文件的示例存储库,您可以启动上述步骤。你现在必须为下一步做好准备。
1.2.6(b)将目录内容导入SVN
以下SVN import命令将使您能够导入上一步中创建的存储库的内容:svn import -m "Initial repository" /tmp/firstproject file:///var/www/svn/repo/firstproject
Adding /tmp/firstproject/file1 Adding /tmp/firstproject/file2这将导致将目录内容导入SVN。
1.2.6(c)承诺修订1
此时,如果您浏览到以下链接,将根据需要引导您进入修订的存储库。1.2.6(d)检查SVN信息
您可以使用以下命令访问项目的SVN信息:svn info http://localhost/svn/repo/firstproject --username john上述命令可以根据需要访问您项目的完整SVN信息。
1.2.6(e)检查来源
要查出来源,您需要使用以下命令:mkdir /tmp/myfirstproject svn co http://localhost/svn/repo/firstproject /tmp/myfirstproject --username jane这将使您能够检查来源。
1.2.6(f)承诺来源
如果作为上一步的一部分,对已检出的源进行了一些修改,则可以使用以下命令将其提交回subversion:cd /tmp/myfirstproject上述命令将帮助您将副本放回检查源中的颠覆帖子更改。
touch file3
svn add file3 --username bob
svn commit -m "Added a new file" --username john
1.2.6(g)检查日志
如果你想检查日志的详细信息,你需要做的只是键入以下命令:svn log http://localhost/svn/repo/firstproject --username john
您还可以检查SVN手册页以获取更详细的日志分析。