[오류 기록] git 푸시 실패: You are not allowed to push code to this 프로젝트

2254 단어 gitssh
0. 문제의 출처
프로젝트 개발이 완료된 후 프로젝트를 gitlab 창고로 전송할 때 다음과 같은 오류 알림이 발생했습니다.
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 rightsand the repository exists.
1. 문제 추적 과정
1.1 프로젝트 역할 보기
첫 번째, 이 프로젝트는 자신이 일상적으로 유지하는 것이 아니기 때문에 자신의 캐릭터를 살펴보자.권한을 재분배했는지 확인해 봐.
결국 자신은:마스터 캐릭터
1.2 sourceTree 도구의 구성 문제라고 생각
명령행 모드에서 git push로 전송한 결과 같은 오류 메시지가 발생했습니다.
그렇다면 자신의 역할이 틀렸다는 것을 증명하지만, 분명히 자신은master이다.
1.3 Push 사용자 확인
제가 원래 쓰는 건요.ssh + id_rsa 제출된
인터넷에서 명령이 검색됨
 #        
 ssh -T [email protected]

발견: 다른 동료 A(오대신)의 이름이 표시됩니다. 다른 동료 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 "[email protected]"


생성된 키와 공개 키 파일은 각각 id_rsa,id_rsa.pub이다.동시에 공개 키를 프로젝트의 ssh 키에 추가합니다.
이때 ssh로 테스트
 #        
 ssh -T [email protected]

알림
그리고 로컬 config 아래의 knownhosts 레코드 추가
하지만 이때 힌트는 동료 A였다.(내 키와 공개 키를 다시 만들었고gitlab 서버가 되돌아오거나 동료 Ade 이름)
그래서 나는 틀림없이 나의 공개 키가 서버에 전송되었을 때 동료 A의 것과 같이 서버가 내가 이 요청을 했을 때 사실상 그가 한 요청이라고 생각하게 하는 것이 아닌가 생각했다.
......
(중간에 많은 시도를 했고 동료 B의 프로필을 보고 계정을 바꿨습니다. 이 중간에 여러 명의 동료들의 도움으로 모두가 궁금해하는 구경과 의견을 주었습니다)
1.5 마지막 발견
여러 번 시도했지만 실패했다. 동료 A는 시간, 틀린 시간에 따라 그가 그 노드에서 한 일을 생각했다.gitlab에 xxweb의 공공 키가 추가되었습니다.
그가 삭제한 후에 내 쪽에서 성공을 시도했다.
내 구성을 살펴보았습니다.
그 안에 공공 설정이 하나 있는데, 그가 추가한 것이 바로 그 공공 설정의 키이다
1.6 예상 질문
여기다ssh/config 디렉터리에 키 파일이 여러 개 있고 기본 키가 없습니다.그래서 서버 ssh 인증과 연결할 때 폴더 전체를 위에서 아래로 훑어봅니다.xxxweb에 접근했을 때 키 라이브러리에 동료 A의 기록이 있으면 동료 A의 인증에 성공합니다.
PS: xxxweb은 회사 개발 환경 서버에 로그인하는 공공 키입니다
1.7 마지막 질문
  • gitlab 두 계정으로 전환하여 로그인합니다.프로젝트에서 기본 사용자만 설정되어 있습니까?
  • tcpdump wireshark 클러치로 유용한 데이터를 잡지 못해 결국 포기
  • 좋은 웹페이지 즐겨찾기