質問: svnコミットエラー linux(ubuntu)でsubversionサーバを構築したのですが、 初回コミットをしたところエラーが出てしまいました。 エラー-------- svn import /home/svn/snavi/ http://localhost:80/repos/snavi -m "test commit" svn: propfind リクエスト (相手: '/repos/snavi') が失敗しました svn: propfind (url: '/repos/snavi'): 301 moved permanently (http://localhost) -------------- この辺の記事(http://a98.jugem.jp/?eid=222)を参考に 色々試してみたのですが、解決できません。 apacheは起動しており、firefoxからはテスト用html http://localhost/repos/snavi/test.html は参照出来ていますが、 http://localhost/repos/snavi/ へのチェックインが出来ないのです。 svnのルート設定は以下で、 [svn設定]--- (/etc/apache2/mods-enabled/dav_svn.conf) dav svn svnparentpath /home/svn/ ------------------------------------------- http://localhost:80/repos はsvnルートへのシンボリックリンクです。 [web(apache)設定]---------------- (ドキュメントルート) http://localhost → /opt/lampp/htdocs (シンボリックリンク) $ls -la /opt/lampp/htdocs lrwxrwxrwx 1 www-data www-data 9 2012-10-04 22:28 repos -> /home/svn ------------------------------------------- svnルート以下には ------------------------------------------ cd /home/svn/ svnadmin create snavi ------------------------------------------ のようにsnaviブランチを作成したのですが、 やはりhttp://localhost/repos/snavi/ へのチェックインが出来ません。 有識者の方、いらっしゃいましたらどうか ご教授のほど宜しくお願い致します。
回答: ああ、あとubuntuのバージョンは明記したほうがよいかと。 「ubuntu svn サーバ」で検索すると http://d.hatena.ne.jp/kslash/20071122/1195741209 とか見つかります。 # dav_svn.confの編集内容見る限り、こちらを参照されたのかも知れませんが。 # 認証用のファイル無くてもフルアクセスできる...んですねぇ......。 >subversionを使う上で、この辺のファイルを直接いじることはまずない。 とか書かれていますが、httpプロトコルでリポジトリにアセスする場合(とfile://でアクセスする場合)は編集不要ですが、 svnプロトコル(ssh+svnプロトコル)でアクセスする場合は編集が必要です。 >svn: propfind (url: '/repos/snavi'): 301 moved permanently (http://localhost) に関しては、掲示されたurlにあるとおりですな。 svnリポジトリのディレクトリは、普通のhttpリクエストでたどれる場所(今回の場合は/repos/~でアクセスできちゃう)に置いてはダメ...ということです。 http://d.hatena.ne.jp/greentea2010/20110520/1305915173 どっちかというとこっちの方が参考になるかと思われます。 認証用のファイルの作成についても説明されていますし。 >sudo htpasswd -c /etc/apache2/dav_svn.passwd (ユーザー名) は最初に作成するときだけで、ユーザを追加するときは「-c」は不要ですのでご注意を。