SVNは、ApacheFoundationTeamによって構築されたオープンソースのバージョン管理システムです。これは、ファイルとフォルダーのコレクションを追跡するのに役立ちます。 Subversionで管理するファイルまたはフォルダーを変更、追加、または削除するたびに、これらの変更をSubversionリポジトリにコミットします。これにより、これらの変更を反映した新しいリビジョンがリポジトリに作成されます。いつでも戻って、以前のリビジョンの内容を確認して取得できます。
この記事は、Debian 11、Debian 10、Debian 9 LinuxシステムでのSubversion(svn)サーバーのセットアップを段階的に行うのに役立ちます。
ステップ1-Apacheをインストールする
SVNサーバーをホストするためにApacheWebサーバーを使用しています。 HTTP URLを使用してsvnサーバーにアクセスするには、ApacheWebサーバーをインストールする必要があります。システムにすでにApacheWebサーバーがある場合は、この手順をスキップしてください。
sudo apt-get update
sudo apt-get install apache2
ステップ2–SVNサーバーをインストールする
次のコマンドを使用して、Subversionパッケージとその依存関係をインストールします。また、Apachelibapache2-mod-svnパッケージ用のsvnモジュールをシステムにインストールします。
sudo apt-get install subversion libapache2-mod-svn libapache2-svn libsvn-dev
インストール後、必要なApacheモジュールを有効にして、Apacheサービスを再起動します。
sudo a2enmod dav
sudo a2enmod dav_svn
sudo service apache2 restart
ステップ3–Subversionを使用してApacheを設定する
Subversion Apacheモジュールパッケージは、構成ファイル /etc/apache2/mods-enabled/dav_svn.confを作成します 。必要な変更を加えるだけです。
Alias /svn /var/lib/svn <Location /svn> DAV svn SVNParentPath /var/lib/svn AuthType Basic AuthName "Subversion Repository" AuthUserFile /etc/apache2/dav_svn.passwd Require valid-user </Location>
ステップ4–SVNリポジトリを作成する
次のコマンドを使用して、 myrepoという名前の最初のsvnリポジトリを作成します。 。また、新しく作成したディレクトリに必要な権限を設定します。
sudo mkdir -p /var/lib/svn/
sudo svnadmin create /var/lib/svn/myrepo
sudo chown -R www-data:www-data /var/lib/svn
sudo chmod -R 775 /var/lib/svn
ステップ5–Subversionのユーザーを作成する
次に、 /etc/apache2/dav_svn.passwdに最初のsvnユーザーを作成します ファイル。これらのユーザーは、チェックアウト、コミットプロセスのためのsvnリポジトリの認証に使用します。
sudo htpasswd -cm /etc/apache2/dav_svn.passwd admin
追加のユーザーを作成するには、次のコマンドを使用します。
sudo htpasswd -m /etc/apache2/dav_svn.passwd user1
sudo htpasswd -m /etc/apache2/dav_svn.passwd user2
ステップ6–ブラウザでリポジトリにアクセスする
HTTP URLを使用して、ブラウザでリポジトリにアクセスします。認証を求めるプロンプトが表示されます。手順5で作成したログイン資格情報を使用します。example.comをシステムのホスト名、ドメイン名、またはIPアドレスに変更します。
http://example.com/svn/myrepo/