push出来無い件
Proton.jp Mercurial TipsとかMercurialのインストールからsshとhttp(cgi)でレポジトリを読み書きできるようにするまでを参考にしつつopenSUSE11.4 64bitにMercurial1.7.5をインストールしたわけだが、cloneはできてもpushができない!Σ(゚д゚lll)ガーン
ということで、色々と試行錯誤してみた。
pushした時のエラー内容は、ssl required
↑であげたページにも書いてあったからhgrcに
[web] ssl_push = false allow_push = *
と書いたのに結果が変わらない…
Apache側の設定かな〜と/etc/apache2を見ていると、参考ページの通りに作ったhgrcというファイルが…とりあえずこっちのhgrcを編集してみると、エラー内容が変わった!←今まではレポジトリの中のhgrcをイジイジしてたけど、そーじゃなかったのね(^^ゞ
次のエラーは、http://hogehogeはMercurialレポジトリ形式とは思われません というもの。text/htmlでエラーが表示されてて見づらかったが、import mercurialの行で何かしらエラーがあるらしい、ということが分かった!
だいたいパスのスペルミスか何かだろーと思って調べてみると、mercurialのインストール先ディレクトリが違ってたorz
/usr/lib/python2.7/site-packages/じゃなくて/usr/lib64/python2.7/site-packages/なのね…
今度こそ!と思って実行するも再びエラーが…
LockUnavailable Permission denied REPO_DIR/.hg/store/lock
とりあえず.hg/store/lockというファイルを探すも何もない…パーミッション関係なのは間違いないから、ファイルやディレクトリの所有者を確認。すると、所有者は正しいんだが所有グループ(表現合ってる?)が違ってた
sudo chgrp -hR hg REPO_DIR
を実行して、hg pushと打つと、うまい感じに行きました^ω^