我在windows vista pc上运行cygwin。我已经成功地安装了sshd,配置并构建了gitosis。我可以远程克隆git -admin.git存储库,对配置进行更改,并成功地将其提交回cygwin机器。
但是,更新后没有执行,新的存储库(如配置中所指定的)也没有创建。
我跑过:
chmod 755 /home/git/repositories/gitosis-admin.git/hooks/post-updatels -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/我还能尝试什么呢,因为我的想法快用完了。
发布于 2010-04-14 19:28:19
首先,不要设置GIT_DIR --它不应该是必要的。
其次,我相信您的问题是,您已经为Gitosis添加了一个新回购的写权限,但是在您推动配置时没有创建它。这是因为向你的Gitosis添加一个新的回购并不能创建它--它只是给了用户创建它的权限。
例如,假设您添加了Gitosis:
[group new_repo]
members = me
writable = new_repo当您将更改推送出去时,new_repo不会被创建--您只是拥有创建它的权限。为了在服务器上实际创建它,请在本地计算机上创建repo,然后将Gitosis服务器添加为远程服务器:
$ git remote add gitosis git@git.example.com:new_repo.git然后把它推出来
$ git push gitosis master在执行git push时,将创建新的回购。
https://stackoverflow.com/questions/2637493
复制相似问题