gitosis と redmine をインストールし、CentOS で apache/passenger を介して実行しています。問題は、redmine を介してリポジトリにアクセスできないことです。エラーは「エントリまたはリビジョンがリポジトリに見つかりませんでした。
私のリポジトリは次の場所に保存されています
/home/zenna/repositories/myproject.git
エラー(Apacheログにある)は"fatal: Not a git repository: '/home/zenna/repositories/myproject.git'"
すべてが Webrick サーバーで正常に動作するため、明らかにリポジトリです。おそらくapache/passengerのパーミッションに問題があると思います
myproject.git
ということで、フォルダをchownしてみましたapache:apache
。おそらく、ディレクトリの親にも apache ユーザーがアクセスできる必要があるのではないかと考えたので、/myproject.git
/home/zenna/repositories/myproject.git へのシンボリック リンクを作成してみました。それもうまくいきませんでした
フォーラムの誰かが提案しました:
gitosis リポジトリに公開証明書を持つユーザーでスクリプト/サーバーを実行しますが、apache/passenger ユーザーにはありません。簡単な解決策は、パッセンジャー ユーザー用の証明書を作成することです。これを gitosis サーバーに追加し、gitosis.conf でパーミッションを割り当てます。ディレクトリ全体とその中のすべてのファイル/フォルダーに対する読み取り許可をApacheユーザーに与えました。
ただし、Apacheユーザーを実行しますsudo /usr/sbin/apachectl start
これは、root の公開鍵を作成し、gitosis.conf に root を追加する必要があるということですか? Redmine、root を介してリポジトリにアクセスしようとしている実際のユーザーは何ですか? アパッチ?乗客?
ありがとう