Subversion 、オープンソースバージョン管理システムであるSVNとしても知られています。ソースファイルとドキュメントを追跡するために使用されます。
Subversionで制御するファイルまたはフォルダーを変更、追加、または削除するたびに、これらの変更をSubversionリポジトリにコミットします。これにより、これらの変更を反映した新しいリビジョンがリポジトリに作成されます。
必要なときはいつでも、いつでも戻って以前のリビジョンの内容を確認して取得できます。
この投稿は、 Debian 9でSVNをセットアップするのに役立ちます / Ubuntu 16.04 。
rootユーザーに切り替えます。
su -
または
sudo su -
Webサーバーをインストールする
まず、リポジトリインデックスを更新しましょう。
apt-get update
ここでは、Apacheサーバーをインストールします HTTPURLを使用してSVNサーバーにアクセスするため。
apt-get install -y apache2 apache2-utils
Apacheがファイアウォールを通過できるようにします(該当する場合)。
ufw allow 80/tcp ufw reload
以下のURLにアクセスして、Apacheサービスを確認してください。
http://your.ip.add.ressApache2のデフォルトページを取得する必要があります。
Subversionのインストール
Apacheがインストールされたら、次のコマンドを発行してApacheSubversionをインストールできます。
### debian ### apt-get install -y subversion subversion-tools libapache2-mod-svn ### ubuntu ### apt-get install -y subversion subversion-tools libapache2-mod-svn libapache2-svn
Subversionの構成
インストールが完了したら、要件に従ってリポジトリを作成します。 ここでは、ベースとして/ var / lib / svnを作成しており、その中に「testrepo」リポジトリを作成します。
mkdir /var/lib/svn
「testrepo」というリポジトリを作成します
svnadmin create /var/lib/svn/testrepo
リポジトリの権限を変更して、Apacheがリポジトリにデータを読み書きできるようにします。
chown -R www-data:www-data /var/lib/svn/testrepo/
Apacheで仮想ホストを構成します。
nano /etc/apache2/mods-enabled/dav_svn.conf
次のコンテンツを配置します。
<Location /svn> DAV svn SVNParentPath /var/lib/svn AuthType Basic AuthName "Subversion Repository" AuthUserFile /etc/apache2/dav_svn.passwd Require valid-user </Location>
ユーザーのパスワードファイルを作成します。 rajを自分のユーザー名に置き換えます 。
htpasswd -cm /etc/apache2/dav_svn.passwd raj
Apacheサーバーを再起動します。
systemctl restart apache2
テストサブバージョン
ブラウザを使用してSVNにアクセスします 、URLは
http://your-ip-add.ress/svn/testrepoユーザー名とパスワードの入力を求められます。
ログインに成功すると、コンテンツは次のように表示されます。
「checkout」というディレクトリを作成します
mkdir checkout
リポジトリ内に含まれているファイルをテストディレクトリにチェックアウトします。 rajを自分のユーザー名に置き換えます 。
svn checkout http://192.168.1.10/svn/testrepo --username raj checkout/
出力は次のようになります。
Authentication realm: <http://192.168.1.10:80> Subversion Repository Password for 'raj': **** <-- Enter Password ----------------------------------------------------------------------- ATTENTION! Your password for authentication realm: <http://192.168.1.10:80> Subversion Repository can only be stored to disk unencrypted! You are advised to configure your system so that Subversion can store passwords encrypted, if possible. See the documentation for details. You can avoid future appearances of this warning by setting the value of the 'store-plaintext-passwords' option to either 'yes' or 'no' in '/root/.subversion/servers'. ----------------------------------------------------------------------- Store password unencrypted (yes/no)? yes <-- Store Password Checked out revision 0.
testrepoリポジトリにコミットするためのテストファイルを作成します。
cd checkout/ touch checkout1.txt touch checkout2.txt
作成したファイルをコミット用に追加します。
svn add checkout1.txt checkout2.txt
出力:
A checkout1.txt A checkout2.txt
追加されたファイルをコミットします。フラグ-mを使用してコミットメッセージに言及できます。
svn commit -m 'First Revision'
出力:
Adding checkout1.txt Adding checkout2.txt Transmitting file data .. Committed revision 1.
コミットされたファイルはブラウザで表示できます。
それで全部です。 Windows用のTortoiseSVNやLinux用のRapidsvnなどのSVNクライアントを使用できます。