SlideShare uses cookies to improve functionality and performance, and to provide you with relevant advertising. If you continue browsing the site, you agree to the use of cookies on this website. See our User Agreement and Privacy Policy.
SlideShare uses cookies to improve functionality and performance, and to provide you with relevant advertising. If you continue browsing the site, you agree to the use of cookies on this website. See our Privacy Policy and User Agreement for details.
Successfully reported this slideshow.
Activate your 14 day free trial to unlock unlimited reading.
1.
超簡単!
2 0 2 0 . 5 . 1
た に や ん
C O P Y R I G H T ( C ) 2 0 2 0 O S S P L A Z A . C O M A L L R I G H T R E S E R V E D
OSSPlaza.com
0
Subversion入門
準備編
2.
このスライド扱うこと
このスライドは、Subversionをいろいろ試す際に、ユーザが自
分で環境を作れるように、機能確認のための最低限の設定を
解説します。実運用は想定していません。
このスライドの前に、別スライド
“超簡単!Apache SubversionをWindows Serverにインス
トール”で紹介したSubversionと、
“超簡単!TortoiseSVNをWindowsにインストール”
で紹介したTortoiseSVNのインストールが終わっていることとしま
す。
C O P Y R I G H T ( C ) 2 0 2 0 O S S P L A Z A . C O M A L L R I G H T R E S E R V E DOSSPlaza.com 1
3.
1. メニュー
C O P Y R I G H T ( C ) 2 0 2 0 O S S P L A Z A . C O M A L L R I G H T R E S E R V E DOSSPlaza.com 2
(1)Apache ベーシック認証の設定
Subversionはhttpモードで通信する方法が主流です。SubversionはApache
HTTPDサーバをフロントに置いて動作し、認証はApacheで行います。
Active DirectoryやLDAPサーバに認証させることもできますが、ここでは(あくまで学習
用なので)Apacheのベーシック認証を設定します。
(2)アクセス権の設定
Subversionはパスベースのアクセス権設定(Access Control)を行うことができ、ユーザ
がそのリポジトリや特定のフォルダを参照・更新することを許可したり禁止したりできま
すが、それを設定します
(3)初期状態のインポート
リポジトリ(リポジトリについては別コンテンツで説明)に初期状態のファイル構造をイン
ポートします。
4.
2. 構成(1)
では、次のような想定で準備をします。
C O P Y R I G H T ( C ) 2 0 2 0 O S S P L A Z A . C O M A L L R I G H T R E S E R V E D 3
【リポジトリ】
URL
repo01 http://localhost/svn/repo01 *作成済み
repo02 http://localhost/svn/repo02
repo03 http://localhost/svn/repo03
【ユーザー】
アクセス権 repo01 repo02 repo03
user01 R/W R/W R/W
user02 R/W R/W R/W
user03 R/W R -
user04 R - -
RはRead(読む権限)、WはWrite(書き込み)権限
5.
2. 構成(3)
C O P Y R I G H T ( C ) 2 0 2 0 O S S P L A Z A . C O M A L L R I G H T R E S E R V E D 4
【リポジトリ構成】
repo01
trunk tags branches
dir01 dir02
file0101.txt
file0102.txt
file0201.txt
file0202.txt
ファイル
6.
3. ユーザを作る(1)
WANdisco版Subversionのパスワードファイルの位置を確認
設定ファイル
c: Program Files(x86)WANdiscoSubversionApache2confsubversion.conf
このファイル”AuthUserFile”ディレクティブ を見るとデフォルトの位置が記載されている。それは、
c: Program Files(x86)WANdiscoSubversionpasswd
である。ここでユーザを作成する。
コマンドプロンプトにて
htpasswdコマンドを使用してユーザを作成。
(次ページ)
C O P Y R I G H T ( C ) 2 0 2 0 O S S P L A Z A . C O M A L L R I G H T R E S E R V E D 5
7.
3. ユーザを作る(2)
C O P Y R I G H T ( C ) 2 0 2 0 O S S P L A Z A . C O M A L L R I G H T R E S E R V E D 6
htpasswdコマンドを実行。一人目を作るときには”-c”でパスワードファイル自身を作成する。
”-b”はユーザ作成時にパスワードも一緒に作る、という指定。
8.
4. ベーシック認証を有効にする(1)
c: Program Files(x86)WANdiscoSubversionApache2confsubversion.conf
<VirtualHost *:80>
KeepAlive On
<Location /svn>
DAV svn
SVNParentPath “c:repositories”
#AuthType Basic
#AuthName “Subversion Repo”
#AuthUserFile “C:Program Files (x86)WANdiscoSubversionpasswd”
#AuthzSVNAccessFile /home/scm/svn.authz
#Require vaild-user
SVNAutoversioning on
</Location>
#Enable Subversion logging
CustomLog logs/subversion.log combined
</VirtualHost>
C O P Y R I G H T ( C ) 2 0 2 0 O S S P L A Z A . C O M A L L R I G H T R E S E R V E D 7
赤枠の項目が認証関連
9.
4. ベーシック認証を有効にする(2)
c: Program Files(x86)WANdiscoSubversionApache2confsubversion.conf
<VirtualHost *:80>
KeepAlive On
<Location /svn>
DAV svn
SVNParentPath “c:repositories”
AuthType Basic
AuthName “ Input your Subversion ID and Password”
AuthUserFile “C:Program Files (x86)WANdiscoSubversionpasswd”
#AuthzSVNAccessFile /home/scm/svn.authz
Require vaild-user
SVNAutoversioning on
</Location>
#Enable Subversion logging
CustomLog logs/subversion.log combined
</VirtualHost>
C O P Y R I G H T ( C ) 2 0 2 0 O S S P L A Z A . C O M A L L R I G H T R E S E R V E D 8
先頭の”#”を削除。
IDパスワード入力のプロンプト
を書き換える(日本語NG)
10.
4. ベーシック認証を有効にする(3)
C O P Y R I G H T ( C ) 2 0 2 0 O S S P L A Z A . C O M A L L R I G H T R E S E R V E D 9
タスクマネージャー
で”WANdiscoSubversionServer”
サービスを探して、再起動する。
11.
4. ベーシック認証を有効にする(4)
C O P Y R I G H T ( C ) 2 0 2 0 O S S P L A Z A . C O M A L L R I G H T R E S E R V E D 10
http://localhost/svn/repo01にア
クセスしようとすると、ログインプロンプ
トが出力される。(認証が効いてい
る)
ここでは入力せずに終わって良い。
12.
5. アクセス権の設定(1)
まずは、対象のリポジトリを作る。
repo01は、既にある(インストールの時に作った)ので、repo02, repo03を
”svnadmin create”にて作成。
C O P Y R I G H T ( C ) 2 0 2 0 O S S P L A Z A . C O M A L L R I G H T R E S E R V E D 11
13.
5. アクセス権の設定(2)
C O P Y R I G H T ( C ) 2 0 2 0 O S S P L A Z A . C O M A L L R I G H T R E S E R V E D 12
c: Program Files(x86)WANdiscoSubversionApache2confsubversion.conf
<VirtualHost *:80>
KeepAlive On
<Location /svn>
DAV svn
SVNParentPath “c:repositories”
AuthType Basic
AuthName “Input your Subversion ID and password”
AuthUserFile “C:Program Files (x86)WANdiscoSubversionpasswd”
#AuthzSVNAccessFile /home/scm/svn.authz
Require vaild-user
SVNAutoversioning on
</Location>
#Enable Subversion logging
CustomLog logs/subversion.log combined
</VirtualHost>
ベーシック認証と同じファイルの中の
AuthzSVNAccessFileディレクティブ を加
工する
14.
5. アクセス権の設定(3)
C O P Y R I G H T ( C ) 2 0 2 0 O S S P L A Z A . C O M A L L R I G H T R E S E R V E D 13
c: Program Files(x86)WANdiscoSubversionApache2confsubversion.conf
<VirtualHost *:80>
KeepAlive On
<Location /svn>
DAV svn
SVNParentPath “c:repositories”
AuthType Basic
AuthName “Input your Subversion ID and password”
AuthUserFile “C:Program Files (x86)WANdiscoSubversionpasswd”
AuthzSVNAccessFile “C:Program Files (x86)WANdiscoSubversionsvn.authz”
Require vaild-user
SVNAutoversioning on
</Location>
#Enable Subversion logging
CustomLog logs/subversion.log combined
</VirtualHost>
先頭の#を外して
パスワードファイルと同じ位置
に”svn.authz”ファイルを指定。
(ファイル名は任意)
15.
5. アクセス権の設定(4)
“C:Program Files (x86)WANdiscoSubversionsvn.authz”を作成してメモ帳で加工する。
C O P Y R I G H T ( C ) 2 0 2 0 O S S P L A Z A . C O M A L L R I G H T R E S E R V E D 14
メモ帳で
svn.authzを開く
16.
5. アクセス権の設定(5)
C O P Y R I G H T ( C ) 2 0 2 0 O S S P L A Z A . C O M A L L R I G H T R E S E R V E D 15
“erai”という名前のグループを作り、user01,
user02を所属させる
リポジトリ”repo01”はuser01, user02,
user03が読書、user04は読のみ許可
リポジトリ”repo02”はuser01, user02が読
書、user03は読のみ許可
リポジトリ”repo03”はuser01, user02が読
書、のみ
17.
5. アクセス権の設定(6)
C O P Y R I G H T ( C ) 2 0 2 0 O S S P L A Z A . C O M A L L R I G H T R E S E R V E D 16
タスクマネージャー
で”WANdiscoSubversionServer”
サービスを探して、再起動する。
18.
6. リポジトリに初期ファイルを登録(1)
デスクトップ上に”projectabc”フォルダを作り、その下にフォルダ構造を作る。
C O P Y R I G H T ( C ) 2 0 2 0 O S S P L A Z A . C O M A L L R I G H T R E S E R V E D 17
repo01
trunk tags branches
dir01 dir02
file0101.txt
file0102.txt
file0201.txt
file0202.txt
<作成予定のレイアウト> <まずprojectabcの下のフォルダ・ファイル作成>
場所はデスクトップ上でも良い
名前も任意(英数字)
19.
6. リポジトリに初期ファイルを登録(2)
C O P Y R I G H T ( C ) 2 0 2 0 O S S P L A Z A . C O M A L L R I G H T R E S E R V E D 18
projectabcフォルダをカレントにして、
右クリック、「インポート」を選択
* カレントのフォルダが間違っ
ている(例えばprojectabcが
選択されていない)と、誤った
構造がインポートされるので
注意。
20.
6. リポジトリに初期ファイルを登録(3)
C O P Y R I G H T ( C ) 2 0 2 0 O S S P L A Z A . C O M A L L R I G H T R E S E R V E D 19
インポート先、リポジトリ/trunkフォルダにイン
ポートする
http://localhost/svn/repo01/trunk
コミットメッセージ。テスト環境では日
本語でもOKだった。
認証が出てきたら、権限のあるユーザ
(user01/user02)、パスワード入力
21.
6. リポジトリに初期ファイルを登録(4)
C O P Y R I G H T ( C ) 2 0 2 0 O S S P L A Z A . C O M A L L R I G H T R E S E R V E D 20
正常に処理できると、「リビジョン1になりまし
た」と表示される
22.
6. リポジトリに初期ファイルを登録(5)
C O P Y R I G H T ( C ) 2 0 2 0 O S S P L A Z A . C O M A L L R I G H T R E S E R V E D 21
ここまでの作業を確認する。右クリックで「リポジトリブラウザ」
を選択する
リポジトリのURLを指定
23.
6. リポジトリに初期ファイルを登録(6)
C O P Y R I G H T ( C ) 2 0 2 0 O S S P L A Z A . C O M A L L R I G H T R E S E R V E D 22
trunkフォルダが作成されている。これ
をクリックすると、
dir01, dir02が作成されていることが
確認できる。
24.
7. TAGSフォルダを作る(1)
C O P Y R I G H T ( C ) 2 0 2 0 O S S P L A Z A . C O M A L L R I G H T R E S E R V E D 23
リポジトリトップの直下(http://localhost/svn/repo01)をカレ
ントにして、「フォルダを作成」を選択
tagsを指定
25.
7. TAGSフォルダを作る(2)
C O P Y R I G H T ( C ) 2 0 2 0 O S S P L A Z A . C O M A L L R I G H T R E S E R V E D 24
コミットメッセージを入力しOKする。 tagsフォルダができる
26.
8. BRANCHESフォルダを作る(1)
C O P Y R I G H T ( C ) 2 0 2 0 O S S P L A Z A . C O M A L L R I G H T R E S E R V E D 25
リポジトリトップの直下(http://localhost/svn/repo01)をカレ
ントにして、「フォルダを作成」を選択
branchesを指定
*要領はtagsの作成と同じです。
27.
8. BRANCHESフォルダを作る(2)
C O P Y R I G H T ( C ) 2 0 2 0 O S S P L A Z A . C O M A L L R I G H T R E S E R V E D 26
コミットメッセージを入力しOKする。 branchesフォルダができる
28.
ここまでうまくできたでしょうか?
準備はここまでです。
これで実際に試すことができると思いますので、具体
的な学習に進んでいただけれたらと思います。
C O P Y R I G H T ( C ) 2 0 2 0 O S S P L A Z A . C O M A L L R I G H T R E S E R V E D 27
29.
MORE
今回は、学習用、デモ用の最低限の設定でした。
本格的な設定は使用目的によって変わってくるとは思いますが・・こ
こでは扱いませんが、本格運用では次のようなことを考慮しないとい
けないですね。
1. ファイアーウォール他、OSのネットワーク設定
2. バックアップ
3. SSL
4. (ベーシック認証はあまり使わないと思うので)LDAP/AD認証
5. その他・・・
C O P Y R I G H T ( C ) 2 0 2 0 O S S P L A Z A . C O M A L L R I G H T R E S E R V E D 28
30.
OSSPlazaでは、お役に立ちそうな情報発信しています。
Webサイト
https://www.ossplaza.com/
Twitter
https://www.twitter.com/ossplaza
Slideshare
https://www.slideshare.net/ (twitter/youtubeにリンクを貼ります)
Youtube
https://www.youtube.com/ にて、”OSSちゃんねる”または”OSSplaza”を検索
C O P Y R I G H T ( C ) 2 0 2 0 O S S P L A Z A . C O M A L L R I G H T R E S E R V E D 29OSSPlaza.com
OSSPlaza.com
31.
C O P Y R I G H T ( C ) 2 0 2 0 O S S P L A Z A . C O M A L L R I G H T R E S E R V E D 30OSSPlaza.com
OSSPlaza.com