スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

Subversionの履歴を保持したままリポジトリを移動

リポジトリを移動させる主な手順は移動元リポジトリのダンプファイルを作成し、それを移動先リポジトリへロードし、subversion.confを編集します。

移動元のダンプファイルを作成するには、

#svnadmin dump [移動元リポジトリ] > [ダンプファイル名]


で、行います。
移動先に受け入れ態勢を作るために、リポジトリを作成します。

#svnadmin create [移動先パス]


#chown -R apache:apache [移動先パス]


これで準備ができたので、ロードします。

#svnadmin load [移動先パス] < [ダンプファイル名]


これで移動完了ですが、このままではクライアントソフトから使えないので、

#vi /etc/httpd/conf.d/subversion.conf


とコマンドし、下記の赤字部分を新しいパスへ編集します。

<Location /svn>
DAV svn
SVNParentPath [移動先パスの親ディレクトリ]

</Location>

これでapacheを再起動させればOKです。<Location /svn>と移動先のディレクトリ名も変更していなければクライアント側の変更はありません。
スポンサーサイト

tag : subversion.conf

Webページとリポジトリを同一系統のパスにした場合の懸念点と対策

Webサーバでホームページを運用しつつ、同じドメインでApache連携できる構成管理ツールのSubversionも運用したい場合、公開部分とBasic認証で隠したい部分が出てくると思いますが、いろいろ気になった点についてメモをまとめておきます。まぁ、できるなら別々のドメインで運用した方がいいかもしれませんが・・

以下のような環境と設定を前提として話を進めていきます。



Apache/2.2.3のhttpd.confの設定は
/var/www/html
配下をWebサイトとして公開しており、配下全域に403エラー404エラーErrorDocumentディレクティブで独自のページを引っかけるようにしています。

<Directory "/var/www/html">
Options FollowSymLinks Includes ExecCGI MultiViews
AllowOverride all
Order allow,deny
Allow from all
ErrorDocument 403 http://myserver.com/403.html
ErrorDocument 404 http://myserver.com/404.html
</Directory>


subversion.confの設定は、
/var/www/html/private/svn
配下をリポジトリを作成するフォルダとし、Basic認証をかけてます。なので、/var/www/html/private/svn 配下は部外者に見られたくない個所ということです。

<Location /svn>
DAV svn
SVNParentPath /var/www/html/private/svn

AuthType Basic
AuthName "Prototype"
AuthUserFile /etc/.svn
Require valid-user
</Location>


構成管理ツールのクライアントソフトはTortoiseSVNを扱うことにします。

まず、この前提だけだとBasic認証のかけ方に問題があります・・

続きを読む

tag : subversion apache 403エラー 404エラー ErrorDocument httpd.conf subversion.conf Basic認証 .htaccess TortoiseSVN

Subversionアクセス制御(Basic認証、AuthzSVNAccessFile)

構成管理が誰でも読み書きできる状況であっては、ソースを盗まれたりしてしまいます。
そこで、ここではBasic認証でアクセス制御するやり方ついてふれたいと思います。

まず、Basic認証ですが、アクセスしようとするユーザへユーザ名とパスワードを要求します。それをパスしたユーザだけがアクセスできます。

続きを読む

tag : Basic認証 LimitExcept

SubversionのWindowsクライアントTortoiseSVNのインストール

前回「Apache連携でバージョン管理システムSubversion構築」を行いましたが、このままでは使い勝手が悪いので、

Tortoise(トータス)SVNというクライアントソフトを導入することにします。

TortoiseSVNをインストールすると、エクスプローラに粘着し、下図のように

Tortoise(トータス)SVNインストール後のエクスプローラの画面

変更がある箇所は赤で、何も変更のない箇所は緑でチェックを付けてくれるため、どこの差分があるのか見やすいのが特徴です。
もちろん、Windowsクライアントなので、面倒なコマンドも必要ありません。

TortoiseSVNの導入と日本語化
下記サイトのダウンロードページにて、最新版のTortoiseSVNとLanguage packsをダウンロードしてきます。
tortoisesvn.tigris.org

2008/12/28現在での最新が、
TortoiseSVN-1.5.6.14908-win32-svn-1.5.5.msi
・LanguagePack_1.5.6.14908-win32-ja.msi
(注意)TortoiseSVNとLanguage packsのバージョンが異なると日本語化に失敗することがあります。

まず、ダウンロードしたTortoiseSVN-1.5.6.14908-win32-svn-1.5.5.msiを実行し、インストールします。次に同じように、LanguagePack_1.5.6.14908-win32-ja.msiをインストールします。

インストールが完了したら、エクスプローラ上で右クリックし、[TortoiseSVN] - [setting]を選択します。settingダイアログが表示されるので、言語「日本語」を選択します。

日本語選択

これで日本語化は完了です。

■ファイルをインポートする
構成管理を行いたいフォルダ上で右クリックし、[TortoiseSVN] - [インポート]を選択します。
インポート

インポート画面が表示されるので、前回接続確認したURLを入力し、OKボタンを押下します。

インポート画面

インポート処理が開始されます。

インポート処理

インポートされたかどうか確認するには、前回のようにインターネットエクスプローラで開いて、URLを入力するとRevision 1になっていることで確認できます。

リビジョン1

これを各クライアントマシンでチェックアウトして環境を取得します。
チェックアウト方法については割愛します。

テーマ : UNIX/Linux
ジャンル : コンピュータ

tag : Subversion TortoiseSVN

Apache連携でバージョン管理システムSubversion構築

Webサーバが構築されている前提で、Subversionの導入について

■SubversionとApache用モジュールmod_dav_svnのインストール
CentOS5ではGUIからインストールできます。
[アプリケーション] - [ソフトウェアの追加/削除]を選択するとパッケージマネージャが表示されます。
その中のmod_dav_svnSubversionにチェックを付けて、適用をすればOKです。

パッケージマネージャ

■リポジトリ用ディレクトリの作成
以下のコマンドで作成しておきます。

mkdir /var/www/svn/project1



■Apacheの設定
以下のコマンドでsubversion用のapache設定ファイルを開きます。

[root@CentOS ~]# vi /etc/httpd/conf.d/subversion.conf


その中でLocationタグの部分に注目します。

#<Location /repos>
# DAV svn
# SVNParentPath /var/www/svn
#
# # Limit write permission to list of valid users.
# <LimitExcept GET PROPFIND OPTIONS REPORT>
# # Require SSL connection for password protection.
# # SSLRequireSSL
#
# AuthType Basic
# AuthName "Authorization Realm"
# AuthUserFile /path/to/passwdfile
# Require valid-user
# </LimitExcept>
#</Location>



コメントアウトされているので、以下のようにコメントを外し、先ほど作成したディレクトリの親ディレクトリまでを入力します。


<Location /repos>
DAV svn
SVNParentPath /var/www/svn

# # Limit write permission to list of valid users.
# <LimitExcept GET PROPFIND OPTIONS REPORT>
# # Require SSL connection for password protection.
# # SSLRequireSSL
#
# AuthType Basic
# AuthName "Authorization Realm"
# AuthUserFile /etc/httpd/conf/.htpasswd
# AuthzSVNAccessFile /etc/svnnsers
# Require valid-user
# </LimitExcept>
</Location>



■Apacheの再起動とリポジトリの作成
以下のコマンドでApacheを再起動させます。

[root@CentOS ~]# /etc/rc.d/init.d/httpd restart


リポジトリの作成は以下のコマンドで行います。

[root@CentOS ~]# svnadmin create /var/www/svn/project1


リポジトリが作成できたら、以下のコマンドで権限を変更してやります。

[root@centos ~]# chown -R apache:apache /var/www/svn/project1


■接続の確認
windowsクライアントならばインターネットエクスプローラで、以下のようにURLを入力して

http://(サーバアドレス)/repos/project1


「Revision 0: /」と表示されれば成功です!

subversion接続確認
プロフィール

白鯖

Author:白鯖
安い寄せ集めの部品で構築し、CentOS5をインストールしました。主に、Webサーバ、アプリケーションサーバとして運用中。ハードの知識はあまり無いプログラマですが、全部自前で作るのは、手間はかかるけど、レン鯖より面白いです。

ハードウェア構成

カテゴリー
最近の記事
最近のコメント
最近のトラックバック
月別アーカイブ
Max TDP控え目なCPU
安くて静音なクーラー
検索フォーム
ユーザータグ
RSSフィード
はてな
スポンサード リンク
おすすめ書籍
twitter
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。