みなさん、こんにちは。今日このチュートリアルでは、Subversionとしても人気のあるApacheSVNをCentOS7またはRHEL7にインストールします。これは、小規模プロジェクトから大規模プロジェクトに適したバージョン管理システム用の優れたツールです。それで、ここに実際にApache SVN(Subversion)とは何かに関するいくつかの情報があります。
Apache Subversion(コマンド名svnの後にSVNと略されることが多い)は、Apacheライセンスの下でフリーソフトウェアとして配布されるソフトウェアのバージョン管理およびリビジョン管理システムです。開発者はSubversionを使用して、ソースコード、Webページ、ドキュメントなどのファイルの現在および過去のバージョンを維持します。その目標は、広く使用されているConcurrent Versions System(CVS)のほぼ互換性のある後継者になることです。
自由ソフトウェアコミュニティは、Subversionを広く使用しています。たとえば、Apache Software Foundation、Free Pascal、FreeBSD、GCC、Mono、SourceForgeなどのプロジェクトで使用されています。 Google Codeは、無料のソフトウェアプロジェクトにSubversionホスティングも提供しています。 CodePlexは、Subversionおよび他のタイプのクライアントへのアクセスを提供します。
企業の世界でもSubversionの採用が始まっています。 Forrester Researchによる2007年のレポートでは、Subversionは、スタンドアロンソフトウェア構成管理(SCM)カテゴリの唯一のリーダーであり、ソフトウェア構成および変更管理(SCCM)カテゴリの強力なパフォーマーであると認められています。
それでは、CentOSまたはRHEL7マシンにSVNをインストールしましょう。 Subversionを機能させるには、最初にWebサーバーをインストールする必要があります。箱から出して完全にセットアップできるようにする以下の手順を次に示します。
1。 Webサーバーのインストール
したがって、Webサーバーをインストールする前に、yumパッケージリポジトリを更新する必要があります。
# yum update
次に、SVNリポジトリのWebサーバーとしてApacheサーバーをインストールします。
# yum -y install httpd httpd-tools
次に、ファイアウォールを通過するhttpを許可する必要があります。以下のコマンドでそれを行うことができます。
# firewall-cmd --permanent --zone=public --add-service=http
# firewall-cmd --reload
上記のようなエラーが発生した場合は、Firewalldがインストールされていないか実行されていないことを確認する必要があります。したがって、「yuminstallfirewalld」を使用してfirewalldをインストールする必要があります 「systemctlstartfirewalld」でサービスを開始します 上記のように「引用符なし( "")」。
次に、Apacheを起動し、http:// localhostまたはhttp://ip-addressにアクセスして正常に動作しているかどうかを確認します。
# 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/」ディレクトリの下に「linoxiderepo」というリポジトリを作成します
# svnadmin create /svn/linoxiderepo
Apacheがリポジトリを読み書きできるように、リポジトリの権限を変更します。
# chown -R apache:apache /svn/linoxiderepo/
システムでSELinuxを有効にしている場合は、次のコマンドを実行します。
# chcon -R -t httpd_sys_content_t /svn/linoxiderepo/
# chcon -R -t httpd_sys_rw_content_t /svn/linoxiderepo/
4。 Apacheサーバーの構成
Apacheで仮想ホストを構成します。
# nano /etc/httpd/conf.d/svn.conf
次のコンテンツを配置します。
<location /svn>
DAV svn
SVNParentPath /svn
</location>
次に、Apacheサーバーを再起動して有効にする必要があります。
# systemctl reload httpd.service
これで、お気に入りのブラウザを使用してSVNにアクセスできるようになります。 http:// our-ip-address / svn / linoxiderepoにアクセスする必要があります。 。表示するためのパスワードを要求されないため、SVNリポジトリに公開されます。 SVNリポジトリを保護したい場合は、以下の手順に従う必要があります。
5。 SVNの保護:(オプション)
上記の設定により、匿名ユーザーはファイルを表示およびコミットできます。匿名アクセスを停止するには、2ステップ前に作成された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:// our-ip-address / svn / linoxiderepoにアクセスしてコンテンツを確認すると、ユーザー名とパスワードの入力を求められます(Secure SVNを設定している場合)。
ログインに成功すると、内容は以下のように表示されます。
テンプレートディレクトリを作成し、SVNにインポートします。
# mkdir -p /tmp/repository/project/{trunk,branches,tags}
# svn import -m 'Initial Import' /tmp/repository/project/ http://192.168.12.103/svn/linoxiderepo
インポート後のブラウザで。
結論
やあ! CentOS 7でリポジトリをホストするために、Apache SVN(Subversion)とApache Webサーバーが正常にインストールされました。このチュートリアルは、RHEL 7(Hat Enterprises Linux)にも適用できます。 Apache SVNは、小規模な開発プロジェクトから大規模なプロジェクトまで、バージョン管理システムに適した優れたツールです。 Windows用のTortoisesvnやLinux用のRapidsvnなどのSVNクライアントが必要です。これらは、Subversionリビジョンシステム用の優れたGUIフロントエンドです。したがって、質問、コメント、フィードバックがある場合は、下のコメントボックスに書き込んで、追加または改善する必要があるものをお知らせください。ありがとう! Apache SVN(Subversion)をお楽しみください。