Forums: Help (Thread #19635)

SVNリポジトリをリモートにおいた場合 (2008-08-19 16:28 by oki0808 #38316)

trac.iniでrepository_dirをUNC形式で指定するのはあまり推奨されないのでしょうか?
リポジトリブラウザでは無事に参照できるのですが、TortoiseSVN - tracサーバでのリポジトリアクセスには失敗します。
ちなみにapacheを実行するユーザはそのディレクトリのアクセス権限を持つものに変えてあります。
TortoiseSVNでアクセスするときはfile://[UNC形式]にすることで回避できますが、今度はpost-commit-hookがうまく動作しないので、trac-SVN連携のメリットが半減してしまいます。

RE: SVNリポジトリをリモートにおいた場合 (2008-08-20 06:37 by okamototk #38321)

すいません。UNC形式については、検証していないので分かりません。ネットワークドライブを利用するのでは何か問題はありますか?
Reply to #38316

RE: SVNリポジトリをリモートにおいた場合 (2008-08-20 09:35 by oki0808 #38323)

当方の環境の場合、リポジトリが存在するディレクトリがばらばらですので、プロジェクトが増えるたびにネットワークドライブを設定しなくてはならず、UNC形式で行けるかなと実験してました。

どうもtracについて来るsvnサーバ?がhttpd.confのsvnセクションにあるSVNParentPathを元に探すようですのでこのあたりがtrac.iniの設定より優先されるのかもしれません。
うまく言えませんが、tracのリポジトリブラウザから参照できるということはtrac.iniの設定自体はUNC形式でも可だけど、tracサーバを介したリポジトリのコミット等で支障がでますよ、ということなのかも知れません。
svn syncやMercurialプラグインを入れる方法を取る方がよさげですね。
#次回のTracLightningのリリースにはMercurialプラグインをぜひ(^^)
Reply to #38316

Mercurialプラグインを入れようとしたものの… (2008-08-25 23:02 by oki0808 #38451)

うまく動きませんでした…
先日秀和から発売されたtrac本を参考にインストールしてみましたが、
「hgはサポートされていないバージョン管理システムです」と言うエラーメッセージが表示されます。
プラグインの設定画面には出てきますので、プラグインのインストール自体は成功していると思うのですが…
Trac LightningでMercurialプラグインを動作させた実績のある方はいらっしゃいませんか?
Reply to #38316

RE: Mercurialプラグインを入れようとしたものの… (2008-08-30 12:21 by okamototk #38597)

Mercurialはまだクライアントが整備されていないので、ちょっと...

あと、下記のサイトにApache+SVNでUNCを利用する方法を書いていますが、参考になりませんかね。

http://www.codebureau.com/blog/2008/03/31/SettingUpSubVersionWithApacheAndWindowsGroupAuthentication.aspx

例えば、

> SVNPath //myserver/myshare$/SVN

こんな感じで設定してみるとか。
Reply to #38451

Mercurialプラグインでなくても (2008-09-01 22:40 by oki0808 #38634)

svnsyncを使えばよいことがわかりました。
あと、私自身、Mercurialに関して誤解していたようでした。

あと、私の勤務している職場は、
「リポジトリの原本はNASにおく」
というルールがありまして、プロジェクトが立ち上がりますと、
NASに一定の領域が割り当てられ、プロジェクトフォルダが生成されます。
しかしながら、フォルダの構成についてはプロジェクトによって異なるので、リポジトリの位置がそれぞれ異なってくるわけです。

//NAS/PROJ_A
の直下にリポジトリを置くプロジェクトもあれば、
//NAS/PROJ_B/SVN_REP
にリポジトリを置くプロジェクトも存在することになります。
ですので、プロジェクトごとに設定できるtrac.iniが最適だと判断したわけです。

httpd.confに書く方法だと、
//myserver/myshare$/SVN
にすべてのプロジェクトのリポジトリに集めてこなければならず、
当方の環境では実現不可能かなと…
あるいは「プロジェクトフォルダ直下にリポジトリを作れ」と言う方法もありますが、私にそのような権限はないもので…

ありがとうございました。

#tracは将来的にもリモートリポジトリをサポートしないものなんでしょうかねぇ…
Reply to #38597

RE: Mercurialプラグインでなくても (2008-09-03 08:25 by okamototk #38656)

> httpd.confに書く方法だと、
> //myserver/myshare$/SVN
> にすべてのプロジェクトのリポジトリに集めて
> こなければならず、
> 当方の環境では実現不可能かなと

もう解決済みのようなので、参考までにということですが、例えば、httpd.confの下記の設定を

<Location "/svn/">
DAV svn
SVNParentPath "C:\TracLight\projects\svn"
...
</Location>

次のようにすると、プロジェクト毎に別のディレクトリを割り当てることができます。

<Location "/svn/proja">
DAV svn
SVNPath プロジェクトAのパス
...
</Location>


<Location "/svn/projb">
DAV svn
SVNPath プロジェクトBのパス
...
</Location>
Reply to #38634

なるほど (2008-09-03 12:50 by oki0808 #38658)

そういう設定も出来たのですね。
このあたりの設定はよく知らなくて…

最初の設定は少々面倒だけど、
定期svnsyncとか、そんなことやらなくても済みそうですね。
ありがとうございました。
Reply to #38656