Subversionのセットアップと基本操作ガイド

1. インストール前の確認

既存のSubversionパッケージを確認します:

rpm -qa | grep subversion

既にインストールされている場合は削除します:

yum remove -y subversion

2. Subversionのインストール

yum install -y subversion

インストール完了後、バージョン情報を確認します:

svn --version

3. リポジトリ環境の構築

リポジトリ用ディレクトリを作成します:

mkdir -p /opt/repos/svnroot

新しいリポジトリを作成します:

svnadmin create /opt/repos/myrepo

作成されたリポジトリには設定ファイルが含まれるconfディレクトリがあります。

4. 設定ファイルの編集

ユーザ認証の設定

passwdファイルを編集してユーザ情報を追加します:

vi /opt/repos/myrepo/conf/passwd

[users]セクションに以下の形式で記述します(スペース必須):

developer = devpass123
tester = testpass456

アクセス権限の設定

authzファイルを編集します:

vi /opt/repos/myrepo/conf/authz

グループベースでの権限管理を実施します。

サーバ設定の変更

svnserve.confファイルを修正します:

vi /opt/repos/myrepo/conf/svnserve.conf

以下のパラメータを設定します:

anon-access = none
auth-access = write
password-db = passwd
authz-db = authz
realm = /opt/repos/myrepo

5. サービスの起動と停止

SVNサービスを起動します:

svnserve -d -r /opt/repos

プロセスの存在を確認します:

ps aux | grep svnserve

サービスを停止する場合:

pkill svnserve

6. 自動起動設定

システム設定ファイルを編集します:

mkdir -p /var/svn
vi /etc/sysconfig/svnserve

サービスを有効化します:

systemctl enable svnserve

7. 動作確認

システム再起動後のサービス状態を確認します:

systemctl status svnserve

ポート開放状況を確認します(デフォルトポート:3690):

ss -tuln | grep 3690

8. ファイアウォール設定

必要に応じてファイアウォールを停止します:

systemctl stop firewalld

クライアント接続例:

svn://192.168.52.3/myrepo

9. 基本コマンド操作

チェックアウト操作

svn checkout svn://192.168.52.3/myrepo --username=developer

特定リビジョンの取得:

svn checkout -r <revision_number> svn_path

ファイル追加とコミット

作業状況の確認:

svn status
# 省略形: svn st

ステータスコードの意味:

  • A: 追加済み
  • M: 変更あり
  • D: 削除予定
  • ? : バージョン管理外
  • C: 競合発生

ファイルをバージョン管理に追加:

svn add *
# または指定ファイル: svn add filename

変更内容をリポジトリに反映:

svn commit -m "ファイル追加"

更新操作

svn update
# 省略形: svn up

タグ: subversion svn version-control linux-server

6月10日 18:24 投稿