2

Windows Vista PCでcygwinを実行しています。sshd のインストール、構成、および gitosis のビルドに成功しました。gitosis-admin.git リポジトリをリモートで git clone し、構成を変更し、コミットして cygwin マシンに正常にプッシュバックできます。

ただし、更新後は実行されず、新しいリポジトリ (構成で指定されている) は作成されていません。

私は実行しました:

chmod 755 /home/git/repositories/gitosis-admin.git/hooks/post-update

ls -l を実行すると、次のように表示されます。

-rwxr-xr-x 1 git None   69 2010-04-13 22:55 post-update

それでも、実行すると:

./post-update

次のエラーが表示されます。

ERROR:gitosis.run_hook:Must have GIT_DIR set in enviroment

私のgit .bashrcに次の行を含めました:

GIT_DIR=$HOME/repositories/gitosis-admin.git/

プロンプトで Set と入力すると、次のように表示されます。

GIT_DIR=/home/git/repositories/gitosis-admin.git/

アイデアが尽きたので、他に何を試すことができますか。

4

1 に答える 1

1

まず第一に、設定しないGIT_DIRでください -- 必要ないはずです。

第二に、あなたの問題は、Gitosis 構成に新しいレポの書き込み権限を追加したことだと思いますが、構成をプッシュしても作成されません。これは、Gitosis の設定に新しいリポジトリを追加しても作成されないためです。作成するためのパーミッションがユーザーに与えられるだけです。

たとえば、これを Gitosis の設定に追加するとします。

[group new_repo]
    members = me
    writable = new_repo

変更をプッシュしても、new_repoは作成されません。作成する権限があるだけです。実際にサーバー上に作成するには、ローカル マシン上にリポジトリを作成し、Gitosis サーバーをリモートとして追加します。

$ git remote add gitosis git@git.example.com:new_repo.git

そして、それを押し出します:

$ git push gitosis master

を実行すると、新しいリポジトリが作成されますgit push

于 2010-04-14T19:28:19.987 に答える