Apache Subversion(一般にSVNとして知られています)は、非常に人気のあるオープンソースのバージョン管理システムです。バージョン管理システムを使用すると、ファイルまたはファイルセットへの変更を一定期間記録できるため、必要に応じて特定のバージョンを呼び出すことができます。
プロジェクトのバージョン管理を行うには、最初にUbuntuにSVNサーバーをインストールする必要があります。 マシン。
Ubuntu18.04LTSへのSVNサーバーのインストール
ここでは、Ubuntu18.04LTSにApacheSubversionをインストールして構成します。
ステップ1.Apacheをインストールします
インストールを進める前に、まずリポジトリを更新しましょう。
sudo apt-get update
sudo apt-get install apache2
apacheのステータスを確認してください。
sudo systemctl status apache2
サービスがまだ開始されていない場合は、Apacheを起動します。
sudo systemctl start apache2
システムの起動時にApacheを有効にします。
sudo systemctl enable apache2
Apacheのインストールを確認します。 Webブラウザーを開き、WebサーバーのIPまたはホスト名を入力するだけです。 Apacheのデフォルトページが表示されている場合、Apacheのインストールは成功しています。
ステップ2.ApacheSubversionをインストールします
subversionと必要なパッケージをインストールする
sudo apt-get install subversion libapache2-mod-svn
インストール後、必要なSVNモジュール(dav_module、dav_svn_module、authz_svn_module)が自動的に有効になります。
有効なモジュールを一覧表示する
sudo apachectl -M
svnモジュールが有効になっていない場合。以下のコマンドを実行して有効にします
sudo a2enmod dav
sudo a2enmod dav_svn
sudo a2enmod authz_svn
これらのモジュールを有効にした後、Apacheサービスを再起動する必要があります。
sudo service apache2 restart
ステップ3.ApacheSubversionを構成する
次に、SVNリポジトリを作成します。ここでは、「/opt」ディレクトリを使用してリポジトリを作成します。
svnディレクトリを作成します。
sudo mkdir -p / opt / svn
svnリポジトリを作成します。ここでは、「fosslinuxrepo」というリポジトリを作成します
sudo svnadmin create / opt / svn / fosslinuxrepo
リポジトリの所有権を変更します。
sudo chown -R www-data:www-data / opt / svn / fosslinuxrepo /
リポジトリの権限を変更します。
sudo chmod -R 775 / opt / svn / fosslinuxrepo
Subversionユーザーを追加します。ここでは、「/etc」ディレクトリにパスワードファイルを作成します。
sudo htpasswd -cm / etc / svn-auth-users fosslinux
2番目のユーザーを作成します。
sudo htpasswd -m / etc / svn-auth-users fosslinux2
SVN用のApache仮想ホストファイルを作成します。これを行うには、最初にディレクトリを「/ etc / apache2 /sites-available/」に変更する必要があります
cd / etc / apache2 / sites-available /
仮想ホストファイルを作成し、ここで「fosslinuxsvn.conf」というファイルを作成します。
sudo vim fosslinuxsvn.conf
次の行をファイルに追加します。
ServerName svn.fosslinux.com ServerAlias svn.fosslinux.com DAV svn SVNParentPath / opt / svn AuthType Basic AuthName "Subversion Repository" AuthUserFile / etc/svn-auth-users必須valid-user ErrorLog $ {APACHE_LOG_DIR} /svn.fosslinux.com-error.log CustomLog ${APACHE_LOG_DIR}/svn.fosslinux.com-access.log結合
「svn.fosslinux.com」をホスト名に変更します。
ファイルを保存して終了します。
デフォルトの仮想ホストファイルを無効にします。
sudo a2dissite 000-default.conf
新しく作成された仮想ホストファイルを有効にします。
sudo a2ensite fosslinuxsvn.conf
apache構文を確認してください。
sudo apachectl -t
次に、Apacheを再起動します。
sudo systemctl restart apache2
ステップ4.構成済みのApacheSubversionをテストする
Webブラウザーを開き、リポジトリのURLを入力して、Enterキーを押します。
http://svn.fosslinux.com/svn/fosslinuxrepo/
sv.fosslinux.comをホスト名に置き換えます。
認証ポップアップ画面が表示されたら、作成済みのユーザー名とパスワードを入力してsvnリポジトリにアクセスします。

これで、作成されたリポジトリを確認できます。

次に、リポジトリ内に「RnD_works」というプロジェクトを作成しましょう。
svn mkdir file:/// opt / svn / fosslinuxrepo / RnD_works-m"追加されたRnD_worksリポジトリ"
svn mkdir file:/// opt / svn / fosslinuxrepo / RnD_works / trunk-m"追加されたRnD_worksトランクリポジトリ"
svn mkdir file:/// opt / svn / fosslinuxrepo / RnD_works / branchs-m"追加されたRnD_worksブランチリポジトリ"
svn mkdir file:/// opt / svn / fosslinuxrepo / RnD_works / tags-m"追加されたRnD_worksタグリポジトリ"
この新しいプロジェクトをリポジトリ内で表示できるかどうかを確認しましょう。

「RnD_works」をクリックして開きます

作成したプロジェクトを削除する場合は、以下のコマンドを使用して削除できます。
svn delete file:/// opt / svn / fosslinuxrepo / RnD_works -m"deleteRnD_worksリポジトリ"
ステップ5.リポジトリバックアップのスケジュール
バックアップフォルダを作成します。
sudo mkdir -p / etc / backcups
ユーザーをrootユーザーに変更します。
sudo su-
crontabを編集します。
crontab -e
次のコマンドでは、svnbackupを毎日深夜にスケジュールします。
0 0 * * * svnadmin dump / opt / svn / fosslinuxrepo> /etc/backcups/svnbackups-$(date +%Y%m%d).dump

次に、保存して終了します。
ステップ6.リポジトリを復元する
バックアップファイルからsvnリポジトリを復元する必要がある場合は、以下のコマンドを使用してください。
新しいリポジトリを作成します。
svnadmin create / opt / svn / restorerepo
バックアップを復元する:
svnadmin load /opt/svn/restorerepoそれで全部です。この記事がSubversionを正常に構成するのに役立つことを願っています。質問やコメントがある場合は、以下のコメントセクションにアクセスしてください。
Ubuntu