1

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 を介してリポジトリにアクセスしようとしている実際のユーザーは何ですか? アパッチ?乗客?

ありがとう

4

3 に答える 3

0

Passenger を使用する場合、実際のユーザーはnobodyであるため、ディレクトリ (その親ディレクトリのすべてを含む) がnobodyユーザーによって読み取り可能であることを確認する必要があります。

于 2010-08-17T11:13:16.777 に答える
0

/home/zenna/repositories/myproject.git/.git を試してください。また、Apache ユーザーが読み取り可能であることを確認してください。

于 2010-07-31T18:41:16.190 に答える
0

myproject.git が裸のリポジトリであり、redmine と同じサーバーにある場合は、myproject.git への完全なファイル パスを入力します。

したがって、gituser@domain:myproject.git の代わりに、/home/gituser/repositories/myproject.git を使用します。

于 2010-08-09T03:33:15.080 に答える