2012-11-29 120 views
5

我接管了一个项目,其中前一个管理员没有提供任何帮助,没有文档,也没有移交......我试图克隆gitolite管理员回购,以便我可以添加自己作为用户。重新创建Gitolite管理员回购

的问题是,当我运行

git clone [email protected]:gitolite-admin.git 

我收到错误

R access for gitolite-admin DENIED to macbook 
(Or there may be no repository at the given path. Did you spell it correctly?) 
fatal: The remote end hung up unexpectedly 

repo gitolite-admin 
    RW+  = macbook 

我的资料库服务器的conf/gitolit.conf文件包含gitolite -admin.git等等,并且我成功运行了

git clone [email protected]:wp_of_travel 

当我运行

ssh [email protected] info 

我回到了一些项目,但gitolite管理员没有被列入其中。

我的情况是绝望的还是我错过了一些东西,我可以重新构建回购并再次克隆它?

我有对服务器的完全控制权是否有帮助?

在这个问题上的任何帮助或建议是欢迎。 谢谢

回答

4

当我运行

ssh [email protected] info 

我回到了一些项目,但gitolite管理员没有被列入其中。

这是正常的:如果的MacBook没有在该项目中回购的gitolite.conf注册的(不是你自己的本地gitolite.conf,但当前存储在gitolite-admin.git回购的),你不会看到它上市。

如果您可以访问到服务器,你可以克隆gitolite-admin.git本地(文件协议,在这里没有SSH),加上你的名字(你的公共SSH密钥后),推回,并运行gitolite setup(如果您正在使用gitolite v3),以便gitolite更新~/.ssh/authorized_keys文件。


随着gitolite V2,页面gl-admin-push:绕过gitolite为gitolite管理员回购是有帮助的:

克隆回购一些安全的位置,并cd到它:

cd /tmp 
git clone ~/repositories/gitolite-admin.git 
cd gitolite-admin 

做出任何你想要克隆的变化nd提交。您可以添加新的密钥,更改conf文件或任何需要修复的内容。如果这是解决某些可能使您无法访问的配置问题的最简单方法,您甚至可以重置为较早的提交(倒带)。

完成时,而不是git push <push arguments>,使用此程序来代替。
例如,代替git push -f,使用gl-admin-push -f

OP edwardgd确认in the comments

看起来像以前的系统管理员做了一个失败的安装根以及用户gitolite,这就是为什么我得到的sooo困惑。
参考adminpush方法是非常简单的,一旦你知道在哪里应用它。

+0

将运行gitolite setup命令销毁任何以前的设置?此外,我更新了我的文本,说macbook在conf/gitolite.conf服务器上不是我自己的。我正在接管该项目,因此我错误地使用了“我的”。 (感谢迅速的反应和帮助) –

+0

@edwardgd与gitolite V3,没有:http://sitaramc.github.com/gitolite/setup.html和http://sitaramc.github.com/gitolite/emergencies.html#丢失钥匙也可以提供帮助。 – VonC

+0

我可以在这里是一个滞后......但是当我运行gitolite设置,当用户登录时gitolite我回到'-su:gitolite:命令不found'在我的/ bin中 –