当前位置:  开发笔记 > 编程语言 > 正文

Google Compute Engine中的GitLab上的Git推/拉失败

如何解决《GoogleComputeEngine中的GitLab上的Git推/拉失败》经验,为你挑选了1个好方法。

我已经使用项目界面中的"Click to Deploy"在Google Compute Engine上安装了GitLab.几分钟后部署成功.我可以通过SSH进入实例,并按预期粘贴它.

我也可以使用Web界面登录GitLab,并将SSH密钥添加到我的个人资料中.到现在为止还挺好.但是,当我尝试推送或拉到新的示例存储库时,我收到以下消息:

Permission denied (publickey,gssapi-keyex,gssapi-with-mic).
fatal: Could not read from remote repository.

Please make sure you have the correct access rights
and the repository exists.

我删除了我的本地SSH配置,因此它不会干扰.我是否需要设置某种类型的SSH隧道?我错过了什么?

更新:擦除我的本地〜/ .ssh文件夹,并重新生成SSH密钥(我已将其添加到GitLab中的配置文件中)会产生以下错误:

Received disconnect from {GITLAB_IP_ADDRESS}: 2: Too many authentication failures for git
fatal: Could not read from remote repository.

Please make sure you have the correct access rights
and the repository exists.

更新2:似乎GitLab可能已经有了解决方案:运行sudo gitlab-ctl reconfigure.请参见:https://gitlab.com/gitlab-org/omnibus-gitlab/blob/master/README.md#git-ssh-access-stops-working-on-selinux-enabled-systems



1> ʰᵈˑ..:

您需要创建一个SSH隧道来与GitLab通信.

1.以用户身份登录开发服务器,然后创建密钥.

ssh-keygen -t rsa

按照步骤操作,并创建一个密码(您可以记住),因为您需要将密码从GitLab拉入/推送到GitLab.

2.现在您已经创建了密钥,我们可以复制它;

cat id_rsa.pub

复制该命令的输出(包括ssh-rsa),并将其添加到GitLab配置文件中.(http://my-gitlab-server.com/profile/keys/new).

3.确保您拥有项目的正确权限

确保您至少是角色开发人员.(角色的屏幕截图:http://i.stack.imgur.com/DSSvl.jpg )

4.现在,复制项目链接

进入你的项目,找到右上角的SSH链接;

在此输入图像描述

5.现在回到您的开发服务器

导航到您要工作的目录,然后运行以下命令;

$ git init
$ git remote add origin <>
$ git fetch

<>我们在步骤4中复制的链接在哪里.

系统将提示您输入密码(这是您的密码密码,而不是服务器密码),并将主机添加到您的known_hosts文件中.之后,该项目将开始下载,您可以享受开发.

我在带有Digital Ocean的CentOS 6.4机器上完成了这些步骤.但它们与使用Google CE无异.

编辑

来自Marty Penner的报价根据此评论回答

解决了!感谢@sxleixer和@Alexander Wenzowski解决这个问题.

显然,SELinux干扰了.ssh目录的非标准位置.我需要在Compute Engine实例上运行以下命令:

sudo yum -y install policycoreutils-python # Install the `semanage` tool
sudo semanage fcontext -a -t ssh_home_t "/var/opt/gitlab/.ssh/authorized_keys" # Allow the nonstandard ssh_home_t

请参阅此处的完整主题:

Google Cloud Engine.权限被拒绝(publickey,gssapi-keyex,gssapi-with-mic)

推荐阅读
Gbom2402851125
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有