2015年9月5日土曜日
SVNのユーザ作成
以下のサイトの丸パクリです。
フリーな人生:Windowsで、SVN(Subversion) + Apache Basic認証、ユーザの追加、リポジトリの作成
【インストール】
まずSVNをインストールしてください。
インストールが終了したら、コンソールで以下のコマンドを実行し、正常に行われたかどうか確認します。
svn --version
だめだったらパスが通ってないので、環境変数のPathに追加してください。
あと、Apache2.2もインストールしておいてください。
インストールの仕方とかは他のサイトを参考にしてください。すみません。。。
【Basic認証の設定】
SVNユーザの追加は、ApacheのBasic認証を利用します。
httpd.confで指定した任意のフォルダに、同じくhttpd.confで指定した任意のファイルを作成します。
以下、Apache設定
「httpd.conf」を編集します(Apache2.2/conf下)。
#以下のモジュールのコメントアウトをはずす
LoadModule dav_module modules/mod_dav.so
LoadModule dav_fs_module modules/mod_dav_fs.so
#以下のモジュールの記述を追加。モジュールがなければ、SVNのフォルダから探してmodulesフォルダにコピーする
LoadModule dav_svn_module modules/mod_dav_svn.so
LoadModule authz_svn_module modules/mod_authz_svn.so
#以下の記述を追加
<Location /svn>
DAV svn
SVNParentPath "d:/svn"
(※以下が認証の設定)
AuthType Basic
AuthName "Subversion repositories"
AuthUserFile "C:/Apache2.2/etc/svnpasswd" ←※1
Require valid-user
</Location>
※1…パスワードファイルの絶対パス。任意の場所で大丈夫なので、拡張子なしの空のファイルを作っておいてください。
あとで説明するユーザの追加時に自動でできたかも。すみません、忘れました。。。
#ちなみに以下のように複数作れます
<Location /svn2>
DAV svn
SVNListParentPath on
SVNParentPath "d:/svn2"
AuthType Basic
AuthName "Subversion repositories"
AuthUserFile "C:/Apache2.2/etc2/svnpasswd"
Require valid-user
</Location>
<Location /svn3>
DAV svn
SVNListParentPath on
SVNParentPath "d:/svn3"
AuthType Basic
AuthName "Subversion repositories"
AuthUserFile "C:/Apache2.2/etc3/svnpasswd"
Require valid-user
</Location>
【ユーザの追加】
コマンドプロンプトを起動してください。
最初のユーザは、-cコマンドを付与して作成します。
c:> cd c:/Apache2.2/etc
c:/Apache2.2/etc>
"C:\Apache2.2\bin\htpasswd.exe" -c svnpasswd username(ユーザ名)
このあとパスワードを入力する
2人目以降は-cコマンドを付けずに実行。付けると上書きされるので。
c:/Apache2.2/etc>
"C:\Apache2.2\bin\htpasswd.exe" svnpasswd username(ユーザ名)
これでetcフォルダの下のsvnpasswdファイルに複数のユーザが追加されます。
また、ここで設定したユーザIDがコミット時などのログに利用されるAuthorになります。
【リポジトリ作成】
(1)ディレクトリを作成
mkdir D:\svn\repo
(2)リポジトリとして認識させる
svnadmin create D:\svn\repo
あとはTortoiseSVNとか、Eclipseとか、または他のツールでフォルダごとインポートします。
2015年8月25日火曜日
SVNのディレクトリを完全削除する
一度、ファイルに保存する場合
svnadmin dump 【svnディレクトリ】 | svndumpfilter exclude 【消したいsvnパス】 > 【適当なファイル名】
svnadmin create 【svnディレクトリ】
svnadmin load 【svnディレクトリ】 < 【適当なファイル名】
あらかじめ移動先を作っている場合
svnadmin dump 【svnディレクトリ】 | svndumpfilter exclude 【消したいsvnパス】 | svnadmin load 【svnディレクトリ】
例
svnadmin dump C:/SvnRep1 | svndumpfilter exclude /trunk/99_XXX | svnadmin load C:/SvnRep2
参照元