WindowsでのSubversionの使用で、思わぬ現象に困っています。

解決方法・参考URLをご存知でしたら教えてください。

[環境]
 Windows XP Professional
 Subversion 1.3.2 (win32インストーラ)

[現象]
 svnserveをデーモンとして起動できない。

 コマンドラインから、
  > svnserve -d -r c:\svnrep
 のように、-dスイッチを指定してsvnserveを起動。

 ところが、
  ・コマンドプロンプトが返ってこない。
  ・タスクマネージャで見ると、svnserveのプロセスは動いている。
  ・Ctrl+CしたりDOS窓を閉じると、svnserveのプロセスが消える。
 のようになってしまいます。

[備考]
 他に、Subversion 1.2.3でも試してみましたが同じでした。

宜しくお願いします。

回答の条件
  • 1人2回まで
  • 登録:2006/07/05 19:05:02
  • 終了:2006/07/06 00:58:53

回答(2件)

id:mz2500 No.1

mz2500回答回数11ベストアンサー獲得回数22006/07/05 19:22:04

ポイント20pt

http://www.strikeout.jp/technote/?Subversion%2FWindows%A4%D8%A4%...

バッチファイルで起動すると良いみたいです

id:F57PB

ありがとうございます。

しかし、残念ながら解決しませんでした。

問題の本質は、DOSプロンプト(DOS窓)が残ることではなく、

svnserveを実行した後にプロンプトが返ってこないことなのです。。。

2006/07/05 20:23:00
id:miyamuko No.2

miyamuko回答回数29ベストアンサー獲得回数112006/07/05 21:22:37

ポイント50pt

Windows 版では -d を付けてもデーモンとしては動作せず、フォアグランドで実行されるようです。

サーバを停止するまでコマンドプロンプトが返ってこないのは、Windows ではそういうものです。


svnservice などサードパーティ製のツールを使えば svnserve をサービスとして動作させることができます。



#以前に svnserve のサービス化が提案されていたようですが、残念ながら「修正しない」ということで解決したようです。

id:F57PB

情報ありがとうございます。

ただ、以前別のマシン(同じくWinXP Pro)で、-dスイッチでデーモン化できていたんですよね。。。

その時は、Cygwin(bashシェル)から実行していたのですが、

今回もCygwinから実行してもやはり駄目でした。。。

Cygwinの何かのモジュールのバージョンが関係しているのかもしれないですね。。。

とりあえず、サービス化する方法でやってみます。

2006/07/06 00:58:06
  • id:miyamuko
    Cygwin でデーモン化できていたのは、(win32版じゃなくて) cygwin 版の svnserve
    が動いていたのではないでしょうか。
    今試しに cygwin 版で svnserve -d してみるとバックグランドで動きました。
  • id:F57PB
    なるほど!

    問題のPCのCygwinのインストール状況を確認したところ、Subversionの
    パッケージがインストールされていなかったようです。

    上手くデーモン起動できていたPCのCygwinは確認できていませんが、
    恐らく、ご指摘の通りWin32のSubversionではなく、CygwinのSubversionで動作していたと思います。

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

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません