Apache Subversionは、ファイルとディレクトリの以前のバージョンと変更を保存するオープンソースのバージョン管理システムです。これにより、必要なときに古いバージョンのファイルを復元できます。リポジトリを追跡して、特定の変更を行ったユーザーを特定することもできます。
SubversionはGitと非常に似ていますが、Gitが分散バージョン管理システムであるのに対し、SVNは集中バージョン管理システムであるという重要な違いがあります。 Subversionには単一の中央リポジトリがあり、トップダウンの制御アプローチを維持しやすくなっています。
このチュートリアルでは、Ubuntu18.04にApacheSubversionをインストールして構成する方法を示します。
前提条件
- Atlantic.Netクラウドプラットフォーム上の新しいUbuntu18.04VPS。
- IPアドレスを指す有効なドメイン名。
- サーバーに構成されている静的IPアドレス。
ステップ1-Atlantic.Netクラウドサーバーを作成する
まず、Atlantic.Netクラウドサーバーにログインします。 2GB以上のRAMを搭載したオペレーティングシステムとしてUbuntu18.04を選択して、新しいサーバーを作成します。 SSH経由でクラウドサーバーに接続し、ページの上部で強調表示されているクレデンシャルを使用してログインします。
Ubuntu 18.04サーバーにログインしたら、次のコマンドを実行して、ベースシステムを最新の利用可能なパッケージで更新します。
apt-get update -y
ステップ2–ApacheSubversionをインストールする
開始する前に、ApacheWebサーバーをサーバーにインストールする必要があります。インストールされていない場合は、次のコマンドでインストールできます。
apt-get install apache2 apache2-utils -y
インストールが完了したら、次のコマンドを使用してSubversionをインストールできます。
apt-get install subversion libapache2-mod-svn -y
Apache Subversionをインストールした後、いくつかのSVNモジュールを有効にする必要があります。次のコマンドで有効にできます:
a2enmod dav a2enmod dav_svn a2enmod authz_svn
すべてのモジュールが有効になったら、Apacheサービスを再起動して変更を実装します。
systemctl restart apache2
この時点で、ApacheSubversionがインストールされます。これで、最初のリポジトリの作成に進むことができます。
ステップ3–Subversionリポジトリを作成する
このセクションでは、Subversionリポジトリを作成し、このリポジトリにアクセスするためのユーザーを作成します。
まず、Subversion用のディレクトリを作成します:
mkdir /svn
次に、/svnディレクトリ内にatlanticrepoという名前のリポジトリを作成します。
svnadmin create /svn/atlanticrepo
リポジトリが作成されたら、リポジトリの所有権をwww-dataに変更します:
chown -R www-data:www-data /svn/atlanticrepo chmod -R 775 /svn/atlanticrepo
次に、次のコマンドを使用して新しいSubversionユーザーを作成します。
htpasswd -cm /etc/svn-user atlantic
以下に示すように、希望するパスワードを入力します。
New password: Re-type new password: Adding password for user atlantic
ステップ4–Subversion用にApacheを構成する
次に、Webブラウザを介してApache Subversionにアクセスするには、Apache仮想ホストファイルを作成する必要があります。
次のコマンドで作成できます:
nano /etc/apache2/sites-available/svn.conf
次の行を追加します:
<VirtualHost *:80> ServerName svn.example.com <Location /svn> DAV svn SVNParentPath /svn AuthType Basic AuthName "Subversion Repository" AuthUserFile /etc/svn-user Require valid-user </Location> ErrorLog ${APACHE_LOG_DIR}/svn-error.log CustomLog ${APACHE_LOG_DIR}/svn-access.log combined </VirtualHost>
終了したら、ファイルを保存して閉じます。次に、Apacheサービスを再起動して、変更を実装します。
systemctl restart apache2
ステップ5–ApacheSubversionにアクセスする
次に、Webブラウザーを開き、URL http://svn.example.com/svn/atlanticrepoを入力します。 。次のページが表示されます:
次に、ユーザー名とパスワードを入力して、O K bをクリックします。 utton。作成したリポジトリが次の画面に表示されます。
ステップ6–Subversionのテスト
このセクションでは、リモートシステムにSubversionクライアントをインストールし、Subversionサーバーからリポジトリをチェックアウトし、いくつかのファイルとディレクトリを作成して、Subversionリポジトリに追加します。
リモートシステムに移動し、次のコマンドを使用してSubversionをインストールします。
apt-get install subversion -y
インストールしたら、次のコマンドを使用してローカルリポジトリのディレクトリを作成します。
mkdir atlantic
次に、次のコマンドを使用して、Subversionサーバーからローカルリポジトリへのatlanticrepoリポジトリをチェックアウトします。
svn checkout http://svn.example.com/svn/atlanticrepo --username atlantic atlantic/
以下に示すように、ユーザー「atlantic」のパスワードを入力するように求められます。
Authentication realm: <http://svn.example.com:80> Subversion Repository Password for 'atlantic': ***** Checked out revision 0.
次に、ディレクトリを大西洋リポジトリに変更し、いくつかのファイルとディレクトリを作成します。
cd atlantic touch file1.txt file2.txt mkdir dir1 dir2
次に、次のコマンドを使用して、すべてのファイルとディレクトリをSubversionリポジトリに追加します。
svn add file1.txt file2.txt dir1 dir2
次の出力が表示されます。
A file1.txt A file2.txt A dir1 A dir2
次に、次のコマンドを使用してリポジトリに変更をコミットします。
svn commit -m 'This is my first commit on Atlantic SVN server'
次の出力が表示されます。
Adding dir1 Adding dir2 Adding file1.txt Adding file2.txt Transmitting file data .. Committed revision 1.
次に、Webブラウザーを開き、URL http://svn.example.com/svn/atlanticrepoを使用してリポジトリーにアクセスします。 。次の画面に、新しく追加したファイルとディレクトリが表示されます。
結論
おめでとう!これで、Ubuntu18.04にApacheSubversionサーバーが正常にインストールおよび構成されました。これで、すべてのファイルとフォルダーを追跡し、必要なときにいつでもファイルの任意のバージョンを回復できます。今すぐAtlantic.Net仮想プライベートサーバーでApacheSubversionをお試しください。