人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

Subversionでの設定方法について相談です。

前回質問した時、Subversionを使ってファイル管理をする事を教えていただきました。
http://q.hatena.ne.jp/1248516554

基本的な使い方はわかるものの、私が目的とした設定にする方法がわかりません。
以下に詳しく記載しますので、設定方法や考え方を教えて下さい。

※画像のようなディレクトリ構成だとします。
・「admin」は管理画面用のファイルで、案件毎に内容が少し異なります。
・「plugin」はシステムに追加機能を与えるファイルが入っており、案件毎に利用させるものが異なります。
・「include」はシステム全体で利用する関数、クラスファイルです。
・「config.php」にDBの接続情報や設置先URLの情報があります。案件毎に異なる内容です。

環境はWindowsXPでTortoiseSVNを使っています。
情報が足りない場合は、コメント欄よりご指摘下さい。

1249447398
●拡大する

●質問者: k28m
●カテゴリ:インターネット ウェブ制作
✍キーワード:config dB PHP Subversion TortoiseSVN
○ 状態 :終了
└ 回答数 : 2/2件

▽最新の回答へ

1 ● tdoi
●100ポイント

案件ごとに異なる部分はそのまま対応するしかないとして、includeをいかに共有させるかというスタンスで回答します。

結論から言うと、subversionの外部参照を使います。

まず、共有するincludeを管理するリポジトリを作成します。

Common/include

その上で、案件ごとにリポジトリを作成します。

たとえば、次のような感じ。

ProjectA/admin
 /plugin
 /config.php
 /include

このときのProjectA/includeを外部参照にします。

こんな感じで指定します。

svn propset svn:externals 'include <Commonリポジトリのincludeを指定するURL>' ProjectA

参考:

http://d.hatena.ne.jp/tomodrop/20080404/1207293345


これれで、共有部分のリポジトリは1か所で管理できます。

pluginも一元管理をしたいのであれば、各プラグインがディレクトリで区切られている前提であれば、同様に外部参照で管理することも可能です。

Common/Plugins/pluginA
 /pluginB
 /pluginC

などと共有のリポジトリに作成し、

ProjectA/plugins/pluginA
 /pluginB

などを用意しておいて、

svn propset svn:externals 'pluginA <CommonリポジトリのpluingAを指定するURL>' plugins
svn propset svn:externals 'pluginB <CommonリポジトリのpluingBを指定するURL>' plugins

pluginCしかいらない別のプロジェクトでは、

svn propset svn:externals 'pluginC <CommonリポジトリのpluingCを指定するURL>' plugins

とすればOKです。


include、および、pluignsの中に修正があった場合は、各プロジェクトで、updateをかければ、更新されます。

また、特定のリビジョン指定でとめることもできるので、特定のプロジェクトは、pluginのアップデートをしないというような設定も可能です。


何かの参考になれば。

◎質問者からの返答

svn propset svn:externals 'pluginA <CommonリポジトリのpluingAを指定するURL>' plugins

のコマンドがうまく通りませんね・・。アクセスが拒否されます。(私のPCの問題でしょうが・・・)


参考URL先でTortoiseSVNで実行する方法(記事2番目の手順)も書いてあるのですが、右クリックをした後のメニューに [TortoiseSVN]-[Properties]-[Add]という項目もないし、手詰まりな状態です。


もう少し自身のPC環境を見直してみます。回答ありがとうございました。


2 ● b-wind
●0ポイント

Subversion にはブランチとタグという機能がある。

タグ


案件毎にブランチを切っていけばよいと言う回答のつもりであったが。

ブランチの管理

◎質問者からの返答

それだけの回答ではわからないから方法を聞いているのですが。

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ