Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/ssh/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
锁定在gitolite和cant gl管理推送之外_Git_Ssh_Gitolite - Fatal编程技术网

锁定在gitolite和cant gl管理推送之外

锁定在gitolite和cant gl管理推送之外,git,ssh,gitolite,Git,Ssh,Gitolite,我愚蠢地用gitolite的ssh密钥格式化了我的笔记本电脑硬盘,我拥有对我的服务器的root访问权限,并遵循这个答案,成功地在tmp文件夹中复制了我的repo并修复了该文件 我的问题是,我在执行“gl管理员推送”时出错,错误如下: Unable to determine correct path for gitolite scripts from the authkeys file. Perhaps you haven't installed gitolite yet? Or perhap

我愚蠢地用gitolite的ssh密钥格式化了我的笔记本电脑硬盘,我拥有对我的服务器的root访问权限,并遵循这个答案,成功地在tmp文件夹中复制了我的repo并修复了该文件

我的问题是,我在执行“gl管理员推送”时出错,错误如下:

Unable to determine correct path for gitolite scripts from the authkeys file.

Perhaps you haven't installed gitolite yet?

Or perhaps this is an HTTP mode install?  If so, please set the GL_BINDIR
environment variable to the full path of the gitolite scripts, then re-try
this command.  For example (if you followed doc/http-backend.mkd precisely):

GL_BINDIR=/var/www/gitolite-home/bin /home/git/bin/gl-admin-push 
在我把自己锁在外面之前,我的gitolite安装运行良好(facepalm)

关于如何摆脱这种混乱局面的一些新想法?

意识到,如果执行的用户没有正确注册其公钥,也可能出现此消息

该键需要使用gitolite脚本设置

这与以下内容一致:

#如果没有传入GL_BINDIR,请查找它
[-z“$GL_BINDIR”]&&
GL|BINDIR=`perl-ne'print($1),如果/^command=“(.+?)\/GL-(time | auth command)/”<$HOME/.ssh/authorized_key,则退出`
#GL_BINDIR还不知道?我们有个问题。。。
[-z“$GL_BINDIR”]&&{
回声“
无法确定authkeys文件中gitolite脚本的正确路径。
意识到,如果执行的用户没有正确注册其公钥,也可能出现此消息

该键需要使用gitolite脚本设置

这与以下内容一致:

#如果没有传入GL_BINDIR,请查找它
[-z“$GL_BINDIR”]&&
GL|BINDIR=`perl-ne'print($1),如果/^command=“(.+?)\/GL-(time | auth command)/”<$HOME/.ssh/authorized_key,则退出`
#GL_BINDIR还不知道?我们有个问题。。。
[-z“$GL_BINDIR”]&&{
回声“
无法确定authkeys文件中gitolite脚本的正确路径。

我也有同样的问题

修复方法是使用
命令=“…”更新服务器上my
git
用户(使用gitolite的用户)的
~/.ssh/
文件夹中的
授权密钥文件
line VonC,加上我想手动添加的用户的ssh pubkey。只是为了使条目与其他现有条目保持一致

此外,我还必须删除
~/ssh/old\u authkeys
文件,因为gitolite似乎一直在引用它,因此在这个过程中删除了更新的
授权的\u keys
文件

由于第二部分的原因,我觉得自己有资格担任一个额外的职位

编辑:
似乎每次我用新的repo或组设置更新gitolite配置时,
authorized_keys
都会移动到
old_authkeys
:|

编辑2:
所有问题的根源是…没有以名为
git的用户身份登录

git@server:repo
当尝试从服务器访问服务器repo时,但作为,即
myuser

这导致配置混乱,并且一次又一次地恢复了
授权密钥
文件。
一旦我为用户
git
(而不是
myuser
)设置了ssh密钥,以
git
(不是
myuser
)的身份登录,我就通过

git clone /local/path/on/server/to/gitolite-admin
(then I set the right permissions in the gitolite config)
gl-admin-push
一切都完成了…当以
git
用户身份登录时,gl admin push工作正常

之后定期使用
git克隆git@server:repo
-
git-add.
-
git-commit
-
git-pushgit@server:回购
是可能的

另一个用户权限引发大麻烦的案例


//获得的知识伴随着智慧而来,它永远不值得花时间在上面。

我也有同样的问题

修复方法是使用
命令=“…”更新服务器上my
git
用户(使用gitolite的用户)的
~/.ssh/
文件夹中的
授权密钥文件
line VonC,加上我想手动添加的用户的ssh pubkey。只是为了使条目与其他现有条目保持一致

此外,我还必须删除
~/ssh/old\u authkeys
文件,因为gitolite似乎一直在引用它,因此在这个过程中删除了更新的
授权的\u keys
文件

由于第二部分的原因,我觉得自己有资格担任一个额外的职位

编辑:
似乎每次我用新的repo或组设置更新gitolite配置时,
authorized_keys
都会移动到
old_authkeys
:|

编辑2:
所有问题的根源是…没有以名为
git的用户身份登录

git@server:repo
当尝试从服务器访问服务器repo时,但作为,即
myuser

这导致配置混乱,并且一次又一次地恢复了
授权密钥
文件。
一旦我为用户
git
(而不是
myuser
)设置了ssh密钥,以
git
(不是
myuser
)的身份登录,我就通过

git clone /local/path/on/server/to/gitolite-admin
(then I set the right permissions in the gitolite config)
gl-admin-push
一切都完成了…当以
git
用户身份登录时,gl admin push工作正常

之后定期使用
git克隆git@server:repo
-
git-add.
-
git-commit
-
git-pushgit@server:回购
是可能的

另一个用户权限引发大麻烦的案例


//获得的知识伴随着智慧而来,它永远不值得花时间在上面。

那么您的
GL\u BINDIR
环境变量的值是什么?这是授权密钥中的一个问题,我在公钥之前缺少命令。例如:command=“/home/git/bin/GL auth command myusername”,无端口转发,无X11-转发,无代理转发,无pty-现在可以正常工作了。我在下面添加了它作为一个答案,并提供了更多的参考,以及您的
GL\u BINDIR
环境变量的值是什么?这是授权密钥中的一个问题,我在我的公钥之前缺少命令。例如:command=“/home/