戻る: パート1-SVN ...
このパートでは:- Apacheをインストールする
- SVNをApacheに接続する
- SVNで動作するようにApacheを構成する
- SVNパスベース認証の設定
Apacheをインストールする
- apache_2.0.63-win32-x86-openssl-0.9.7m.msiを実行します
- 初期設定を入力します
- インストールの種類を選択しますカスタム
- インストールディレクトリCを指定します。\ usr \ local \ Apache2
正しく選択されたディレクトリ
- インストールが完了するまで待ちます。
SVNをApacheに接続する
- C:\ usr \ local \ Subversion \ bin \ディレクトリからC:\ usr \ local \ Apache2 \ modules \ディレクトリにすべての* .so、* .dllファイルをコピーします
- intl3_svn.dll
- libapr.dll
- ...
- ssleay32.dll
- mod_authz_svn.so
- mod_dav_svn.so
SVNで動作するようにApacheを構成する
一度に複数のリポジトリで動作するようにSVNを設定します。セットアップ:
- ディレクトリC:\ usr \ local \ Apache2 \ conf \ svn \を作成し、次の内容のhttpd-svn.confファイルを作成します 。
#httpd-svn.conf SVN構成ファイル # #SVNで動作するようにモジュールを接続します LoadModule dav_moduleモジュール/ mod_dav.so LoadModule dav_svn_module modules / mod_dav_svn.so LoadModule authz_svn_moduleモジュール/ mod_authz_svn.so <場所/ svn> DAV SVN #SVNリポジトリを含むディレクトリへの絶対パス SVNParentPath "D:/ repos" #ストレージのリストを表示 SVNListParentPathオン #ストレージリストデザインファイル SVNIndexXSLT "/svnindex.xsl" #ストレージアクセス制御ACLファイル #使用するコメントを外します AuthzSVNAccessFile conf / svn / svnaccess #認証されたユーザーのみがリポジトリにアクセスできます 有効なユーザーが必要 #認証タイプ AuthType Basic #リポジトリの一般名 AuthName "私のSVNリポジトリ" #SVNストレージにアクセスするためのユーザーパスワードを含むファイル AuthUserFile conf / svn / svnpasswd </場所>
- ディレクトリCに移動します。\ usr \ local \ Apache2 \ conf \
- httpd.confファイルを開き、ファイルの最後に次の行を追加します。
#Subversionシステム conf / svn / httpd-svn.confを含めます
- ファイルを保存して閉じます。
svnpasswdパスワードファイルの作成
最初の方法-svnuser.batスクリプトを使用します
- メモ帳を開き、次のコードをコピーします
@エコーオフ if%1 == "" goto USAGE 存在しない場合はsvnpasswd htpasswd -cm svnpasswd%1 存在する場合svnpasswd htpasswd -m svnpasswd%1 後藤EXIT :使用法 echo SVNアクセスファイルを作成します echo使用法:svnuserユーザー名 :終了
- ファイルを名前を付けて保存します
svnuser.bat
ディレクトリC:\ usr \ local \ Apache2 \ bin \ - コマンドプロンプトを実行し、ディレクトリCに移動します。\ usr \ local \ Apache2 \ bin \
- コマンドを使用してユーザーを順番に追加します
svnuser名
、プログラムはパスワードを要求します-入力してください。 - ディレクトリC:\ usr \ local \ Apache2 \ bin \に 、パスワードsvnpasswdで作成されたファイルがあります。
- ファイルをディレクトリCにコピーします:\ usr \ local \ Apache2 \ conf \ svn \
2番目の方法-手動
- コマンドプロンプトを開く
- ディレクトリCに移動します。\ usr \ local \ Apache2 \ bin \
- リポジトリへのアクセス権を持つユーザーを追加するには、各ユーザーに対してコマンドを実行します
htpasswd svnpasswd user1 passwd_for_user1
- ディレクトリC:\ usr \ local \ Apache2 \ bin \に 、パスワードsvnpasswdで作成されたファイルがあります。
- ファイルをディレクトリCにコピーします:\ usr \ local \ Apache2 \ conf \ svn \
htpasswdでは、実行ごとに(コマンドラインからパスワードを入力できるように)-bスイッチと、パスワードファイルを作成する最初の実行に-cスイッチが必要です。
SVNパスベース認証の設定
SVNでは、ユーザーのアクセス領域を区別する機会があります。 ユーザーが利用できるパスを示す特別な形式のファイルが作成されます。 例を挙げましょう。
リストには、RepA、RepB、docsの3つのリポジトリがあります。 3人のユーザー:oleg、ira、sveta。
ユーザーをグループに分けます:
注意! ファイル内でコメントは許可されていないため、必ず削除してください!
[グループ] admins = oleg //グループ管理者、olegを記述 devteam = ira、oleg //メインプロジェクトの開発者グループ editors = @ devteam、sveta //ドキュメントを書くユーザー //前述のユーザーグループは、次のものに含めることができます。 //グループを参照する場合、@ group_nameが使用されます
利用可能なリポジトリのリストを表示できるユーザーを示します。
デフォルトでは、誰でも閲覧できます。 ルールはネストされたストレージに適用されます!管理者のグループはファイルとストレージ設定を編集できます。
[/] * = r @admins = rw
RepAリポジトリにアクセスします。
ルールはルート要素から拡張され、すべて(* = r)による表示を許可しますが、一部のユーザーはこのリポジトリへのアクセスを拒否する必要があります。これは、空のアクセス修飾子値でユーザー名を書き込むことで実行できます。 リポジトリへのユーザーolegアクセスを拒否すると、開発者としてiraが完全に制御できます。
[RepA:/] oleg = //すべてのアクセス権を取り消し、空の値 ira = rw //読み取り、書き込み
RepBリポジトリへのアクセス。
リポジトリへのiraユーザーのアクセスを拒否すると、 olegは開発者として完全に制御できます。
[RepB:/] ira = oleg = rw
ドキュメントリポジトリへのアクセス。
編集者ドキュメントチームへのフルアクセスを許可します。
[ドキュメント:/] @editors = rw
その結果、 svnaccess認証の設定ファイルを取得します。
[グループ] admins = oleg devteam = ira、oleg 編集者= @ devteam、sveta [/] * = r @admins = rw [RepA:/] オレグ= ira = r [RepB:/] ira = oleg = r [ドキュメント:/] @editors = rw 匿名= r
生成されたsvnaccessファイルをC:\ usr \ local \ Apache2 \ conf \ svn \ディレクトリにコピーします
Apacheサーバーを再起動します
ブラウザを開き、アドレスhttpを入力します。// localhost / svn /
ブラウザは、ファイルで以前に指定した名前とパスワードを尋ねます
C:\ usr \ local \ Apache2 \ conf \ svn \ svnpasswd 、
それらを入力すると、ストレージのリストstore1、store2が表示されます。