【错误记录】git ssh 推送失败的一次记录

栏目: 编程工具 · 发布时间: 4年前

内容简介:在完成了项目的开发之后,在把项目推送到第一步,因为这个项目不是自己日常维护的,就去查看下自己的角色。 看下是不是重新分配了权限。

0. 问题的来源

在完成了项目的开发之后,在把项目推送到 gitlab 仓库时,出现了以下错误提示:

【错误记录】git ssh 推送失败的一次记录

GitLab: You are not allowed to push code to this project.

fatal: Could not read from remote repository.

Please make sure you have the correct access rights

and the repository exists.

1. 问题追踪过程

1.1 查看项目角色

第一步,因为这个项目不是自己日常维护的,就去查看下自己的角色。 看下是不是重新分配了权限。

结果发现自己是:master 角色

1.2 想着是 sourceTree 工具的配置问题

命令行模式下使用 git push 推送,结果是:同样的报错信息

那么就证明确实是自己角色不对了,可明明自己是 master

1.3 确认自己的推送用户

我本身用的是 ssh + id_rsa 提交的

网上搜索到一个命令

# 查看推送的用户
 ssh -T git@git.workec.com

发现 : 显示的是另外一个同事A的名字

发现 : 显示的是另外一个同事A的名字

发现 : 显示的是另外一个同事A的名字

做过一次测试, 项目中添加A,那么我就可以正常推送。

下面就想着,为什么是同事A呢?如何修改过来呢?

所以我就去查看了相关所有的本地配置文件 ,git 配置,gitlab 对应的密钥,都是我本人无疑。

1.4 重新生成密钥

# step 1 :清空上次的密钥
ssh-keygen -R git.workec.com
# 或者使用下面的命令
ssh-keygen -p

# step 2: 生成密钥文件
ssh-keygen -t rsa -C "youremail@xxx.com"

生成的密钥和公钥文件,分别是 id_rsaid_rsa.pub

同时把公钥添加了项目的自己的ssh key

【错误记录】git ssh 推送失败的一次记录

这个时候,使用 ssh 测试一下

# 查看推送的用户
 ssh -T git@git.workec.com

会提示

【错误记录】git ssh 推送失败的一次记录

然后会在 本地config下的 known_hosts 添加一条记录

【错误记录】git ssh 推送失败的一次记录

但是这个时候提示的:还是同事A。(我都已经重新生成了我的密钥和公钥,gitlab 服务器返回还是同事Ade名字)

所以我就在想一定是我的公钥发送给服务器的时候,是不是和同事A的一样,让服务器以为当我发出这个请求时,实际上是他做出的请求。

。。。。。。

(中间经历了很多尝试,查看同事B的配置,换账号,这中间多亏了多个小伙伴的帮忙,大家都很好奇的围观和给与意见)

1.5 最后发现

多次尝试失败,同事A根据时间,出错的时间想了下他在那个节点做的事情,是在他的 gitlab 上 添加了一个 xxweb 的公共密钥。

他删除之后,我这边尝试成功。

我查看了下我的配置

【错误记录】git ssh 推送失败的一次记录

里面有一个公共的配置,他添加的就是那个公共配置的密钥

1.6 问题猜测

以为 .ssh/config 目录下,有多个密钥文件,且没有默认的密钥。

所以在和服务器 ssh 认证连接时候,他会从上向下遍历整个文件夹。

当访问到 xxxweb 的时候,查看到密钥库,有同事A的记录,就返回同事A的认证成功。

PS: xxxweb 是登录公司开发环境服务器的一个公共密钥

1.7 最后的问题

  1. 一个 gitlab 二个账号,切换账号登录。

    难道只有在项目下配置默认的用户

    【错误记录】git ssh 推送失败的一次记录

  2. 使用 tcpdump wireshark 抓包没有抓到有用的数据,最终放弃(很不甘心)

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

村落效应

村落效应

[加] 苏珊·平克(Susan Pinker) / 青涂 / 浙江人民出版社 / 2017-3-1 / CNY 69.90

 面对面的接触是作为社会性动物的人类最古老、深刻的需求。在互联网时代,社交媒体已经成为人际沟通的主体,人际关系的维系越来越被社交媒体上的点赞、转发、评论代替,在冰冷的互动中,我们失去了真实与温度。面对面的人际关系与接触能让人感受到如村落生活般的归属感,它是一个人免疫力、复原力和影响力的真正来源。虽然互联网拥有毋庸置疑的优势,但是如果我们渴望快乐、健康、长寿……没错,还有智慧,我们就需要想方设法腾......一起来看看 《村落效应》 这本书的介绍吧!

Base64 编码/解码
Base64 编码/解码

Base64 编码/解码

URL 编码/解码
URL 编码/解码

URL 编码/解码

XML 在线格式化
XML 在线格式化

在线 XML 格式化压缩工具