我在我的linux服务器上设置了gitolite,并将我的笔记本电脑添加到了gitolite-admin存储库。我被迫格式化我的笔记本电脑(坏硬盘)所以我需要想办法重新获得我的其他存储库gitolite控件的访问权限。值得一提的是,如果有帮助,我可以在我的linux服务器上进行root访问。我不太熟悉SSH /公钥等,所以如果有人可以提供帮助,我将非常感激。
答案 0 :(得分:11)
如果安装了2.0.3或更高版本,则可以使用gl-admin-push
命令从管理存储库的本地克隆中推送:
请参阅gl-admin-push: bypassing gitolite for the gitolite-admin repo :
su
给您的Gitolite用户cd /tmp && git clone ~/repositories/gitolite-admin.git
keydir/
中的旧公钥替换为新公钥,然后提交~/.gitolite/src/gl-admin-push
推动它;这将更新用户的.ssh/authorized_keys
以集成新密钥如果您使用的是2.0.3之前的版本,则可以使用gl-dont-panic
命令替换密钥:
su
给您的Gitolite用户将您的新公钥复制到/tmp/username.pub
username.pub
应与您keydir/
中当前的文件名相同;您可以使用
keydir/
的内容
GIT_DIR="$HOME"/repositories/gitolite-admin.git git ls-tree master:keydir
运行cd /tmp && ~/.gitolite/src/gl-dont-panic username.pub
以安装替换密钥
答案 1 :(得分:5)
上面的答案很有帮助。 但对于gitolite 3.04(可能稍后)使用 gitolite push 而不是 gl-admin-push 。