如何在CentOS 7/Rhel上安装Apache SVN(Subversion)

时间:2020-03-05 15:27:46  来源:igfitidea点击:

在本教程中,我们将在我们的CentOS 7或者RHEL 7上安装Apache SVN,也像Subversion一样流行,这是一个很棒的版本控制系统的工具,它适用于大型项目的小型项目。
因此,这里有一些关于真正是Apache SVN(Subversion)的信息。

Apache Subversion(通常缩写SVN,在命令名称SVN之后)是在Apache许可证下作为自由软件分发的软件版本控制系统和修订版控制系统。

开发人员使用Subversion来维护源代码,网页和文档等文件的当前和历史版本。
它的目标是成为广泛使用的并发版本系统(CVS)的最兼容的继承者。

自由软件社区广泛使用了颠覆性:例如在Apache软件基金会,免费Pascal,FreeBSD,GCC,Mono和SourceForge等项目中。
Google代码还为其自由软件项目提供Subversion托管。
Codeplex提供访问subversion以及其他类型的客户端。

世界也开始采用颠覆。
Forrester Research的2007年报告认可作为独立软件配置管理(SCM)类别的唯一领导者,并作为软件配置和变更管理(SCCM)类别的强大表演者。

所以,让我们在CentOS或者Rhel 7机器中安装SVN。
我们需要先安装Web服务器以使我们的Subversion工作。
以下是以下步骤,让我们完全将其从框中设置出来。

1.安装Web服务器

因此,在我们安装Web服务器之前,我们需要更新yum包存储库:

# yum update

现在,我们将为SVN存储库安装Apache Server作为Web服务器。

# yum -y install httpd httpd-tools

现在,我们需要允许通过我们的防火墙允许HTTP。
我们可以使用以下命令执行此操作。

# firewall-cmd --permanent --zone=public --add-service=http
# firewall-cmd --reload

如果我们收到如上所述的错误,那么我们必须确保未安装防火墙程序或者未运行。
因此,我们需要使用"yum安装防火墙"来安装防火墙,并使用带引号("")的"systemctl start firewalld"启动服务,如上所示。

现在,我们希望通过访问http://localhost或者http://ip-address来开始我们的Apache并验证它是否正常运行。

# systemctl start httpd.service

2.安装Subversion.

安装Apache Web服务器后,我们需要执行以下命令来安装subversion。

# yum -y install subversion subversion-tools mod_dav_svn

3.配置Subversion.

在我们完成Subversion后,我们现在可以根据要求开始创建存储库。
在我们的例子中,我们将创建/svn作为基础,并将其中创建存储库。

注意:我们可以选择我们想要创建存储库的目录并使用它替换/svn。

# mkdir /svn

现在,我们将在"/svn /"目录下创建一个名为"theitroadrepo"的存储库,如

# svnadmin create /svn/theitroadrepo

更改存储库的权限,以这样的方式可以读取和写入它。

# chown -R apache:apache /svn/theitroadrepo/

如果系统上启用了SELinux,请运行以下命令。

# chcon -R -t httpd_sys_content_t /svn/theitroadrepo/
# chcon -R -t httpd_sys_rw_content_t /svn/theitroadrepo/

4.配置Apache服务器

在Apache中配置虚拟主机。

# nano /etc/httpd/conf.d/svn.conf

放置以下内容。

<location /svn>
DAV svn
SVNParentPath /svn
</location>

然后,我们需要重新启动Apache Server以生效。

# systemctl reload httpd.service

现在,我们应该能够使用我们喜欢的浏览器访问SVN,我们需要转到HTTP://我们的IP地址/SVN/ONITOADREPO。
它不会向我们询问任何密码查看所以,它使我们的SVN存储库可公开访问。
如果我们想保护我们的SVN存储库,那么我们需要按照以下步骤操作。

5.保护SVN :(可选)

上述设置将允许匿名用户查看和提交文件。
要停止匿名访问,我们必须编辑Apache配置,以前只创建了两个步骤。

# nano /etc/httpd/conf.d/svn.conf

我们将在该文件中添加以下内容。

<location /svn>
DAV svn
SVNParentPath /svn/
AuthType Basic
AuthName "Authorization Realm"
AuthUserFile /etc/subversion/svn.users
Require valid-user
</location>

为用户创建了密码文件。

# htpasswd -cm /etc/subversion/svn.users arun

现在,重新启动Apache服务器。

# systemctl reload httpd.service

6.测试Subversion.

最后,我们可以访问浏览器中的URL http://我们-Ip-address/svn/theitroadrepo来查看内容,将要求我们输入用户名和密码(如果我们设置了安全SVN)。

登录成功后,内容将列出如下。

创建模板目录并导入SVN。

# mkdir -p /tmp/repository/project/{trunk,branches,tags}
# svn import -m 'Initial Import' /tmp/repository/project/http://192.168.12.103/svn/theitroadrepo