IT story

Android Studio-푸시 실패 : 치명적 : 원격 저장소에서 읽을 수 없음

hot-time 2020. 12. 29. 07:53
반응형

Android Studio-푸시 실패 : 치명적 : 원격 저장소에서 읽을 수 없음


Android Studio에 git 프로젝트가 있고 BitBucket에 원격이 있으며 HTTPS 대신 SSH를 사용하도록 변경했습니다. Atlassian의 SourceTree를 사용하여 모든 작업을 수행 할 수 있지만 Android Studio에서는 프로젝트를 푸시하려고 할 때마다

푸시 실패 : 치명적 : 원격 저장소에서 읽을 수 없습니다.

어떤 일이 일어날 수 있는지에 대한 단서가 있습니까?


이것은 아마도 Intellij 문제 일 것입니다. 키는 기본적으로 ssh에 의해 관리되며 Intellij에는 자체 ssh 프로그램이 있습니다.

설정으로 이동하여 git-> ssh 실행 파일을 검색 한 다음 native

여기에 표시된대로 : IntelliJ IDEA가있는 git : 원격 저장소에서 읽을 수 없습니다.


설정> 버전 관리> Git으로 이동합니다. SSH 실행 파일이 "Native"로 설정되어 있는지 확인하십시오.

이미 설정되어있는 경우 "Built-in"으로 다시 전환하고 적용한 다음 다시 "Native"로 전환합니다.

여기에 이미지 설명 입력


Android Studio 또는 IntelliJ에서 Git SSH 확인에는 설정-버전 제어-Git-SSH 실행 가능- "Built-in"또는 "Native"를 통해 변경하는 두 가지 방법이 있습니다.

  1. 내장 : 인증을 위해 Git에 내장 된 ssh 키 쌍을 사용하는 것을 의미합니다.
    ssh-keygen -t rsa
    기본 저장 경로 를 통해 생성 할 수 있습니다. "~ / .ssh / id_rsa""~ / .ssh / id_rsa.pub" . BitBucket 계정에 공개 키를 추가해야합니다. 경로는 다음과 같습니다. 계정 관리-SSH 키-키 추가
  2. Native : 서비스 계정에 종종 자동 추가되는 BitBucket 또는 GitHub와 같은 네이티브 저장소 호스팅 서비스에서 생성 된 ssh 쌍을 사용하는 것을 의미합니다. 예를 들어 GitHub에서. SSH 키 쌍 "~ / .ssh / github_rsa.pub"와 "~ / .ssh / github_rsa"가 생성되었고 공개 키가 GitHub GUI를 통해 내 계정에 자동 추가되었을 수 있습니다. 따라서 SSH 실행 파일을 "Native"로 변경하는 것은 간단한 방법이 될 수 있습니다.

어쨌든 리포지토리 호스팅 서비스에서받은 정확한 공개 키를 추가 한 후 양방향 사용이 가능합니다.


내 SSH 실행 파일이로 설정되었지만 NativeSSH 키 파일에 대한 암호를 설정했기 때문에 해당 오류가 발생했습니다.

Android 스튜디오에서 비밀번호를 지정하는 방법을 찾지 못했지만 다른 해결책 이 있습니다. 비밀번호를 제거 할 수 있습니다 $ ssh-keygen -p. 그런 다음 파일 위치를 확인하고 이전 암호를 입력하고 새 암호를 비워 둡니다.

에서 촬영 나는 새로운 키를 생성 할 필요없이 SSH 키에 대한 암호를 제거하려면 어떻게합니까?


Android Studio 3.1에서 비슷한 문제가 발생했습니다.

나는 변경 > 버전 관리> 힘내> SSH 실행을 기본 설정 에서 내장-기본 여기 제안하지만 도움이되지 않았다.

그런 다음 Android Studio를 3.2로 업그레이드하고 Built-in 으로 다시 전환 했습니다 . 제 경우에는 문제가 해결되었습니다.


나는 같은 문제가 있습니다. Android Studio를 실행하는 방법이 중요합니다. 터미널 또는 sth에서 일반 권한으로 실행하면 저장소를 푸시하기 위해 필요한 로컬 파일을 읽을 수 없습니다.

해결책 은 현재보다 더 많은 권한으로 Android Studio를 다시 시작하는 것일 수 있습니다.


github.com으로 이동하여 저장소를 열고 HTTPS URL 사용을 복사합니다. Android 프로젝트 디렉토리로 이동합니다. .git 폴더에서 구성 파일을 검색하십시오.

구성 파일에서 github.com (https 사용)에서 복사 한 URL을 이전 URL로 변경합니다. 구성 파일을 저장하고 다시 푸시하십시오. 이것은 나를 위해 일했습니다.


나는 이것을 직접 보았고 기존 답변이 약간 불완전하다는 것을 알았습니다.

tl; dr : Android Studio / IntelliJ의 SSH 클라이언트를 기본 제공에서 기본으로 전환하면 문제가 해결 될 수 있습니다.

Android Studio (효과적으로 전문화 된 IntelliJ IDEA)는 자체 내장 SSH 클라이언트와 함께 제공되지만 원하는 경우 기본 (플랫폼 / OS에 따라 다름)으로 전환 할 수 있습니다. Android Studio 옵션을 열고 'git'을 검색 한 다음 SSH 실행 파일 드롭 다운에서 'native'를 선택하여이를 변경할 수 있습니다.

제 경우에는 Android Studio를 통해 BitBucket으로 푸시 할 수 없었지만 git push정상적으로 작동했습니다. 네이티브 (제 경우에는 OSX SSH)로 전환하여 문제가 해결되었습니다. 이제 Android Studio에서 BitBucket으로 푸시 할 수 있습니다.

다른 답변은 주제에 대해 다루었지만 SSH 실행 파일과 사용하는 키 사이에 약간의 혼동이 있었던 것으로 보입니다.

SSH 실행 파일의 Android Studio 도움말 :

  • 기본 제공 : IntelliJ IDEA에서 제공하는 구현을 사용하려면이 옵션을 선택합니다.
  • 기본 : 기본 구현을 사용하려면이 옵션을 선택하십시오.

이 문제를 만났고 마침내 해결했습니다. 그리고 설정을위한 두 가지 중요한 사항이 있습니다. Android 스튜디오에서 : File-Settings-GitHub : "ssh를 사용하여 git 저장소 복제"를 선택하지 않음 Android 스튜디오에서 : File-Settings-Git : "SSH를 사용하여"내장 "을 선택합니다. 실행 가능 "

그리고 GitHub 계정에 이미있는 SSH의 경우 Android 스튜디오에있는 SSH가 Android 스튜디오에서 SSH를 찾는 방법을 잊어 버렸습니다.하지만 다른 방법으로 찾을 수 있습니다.


변경하면 기본 설정> 버전 제어> 힘내> 내장에서 SSH 실행기본 한 후 작동하지 않는 PLS 선택을 취소하여 시도 > 버전 컨트롤> GitHub의> 복제 자식 저장소를 사용하여 SSH 환경 설정을 CHECK IT를


공개 ssh 키를 다시 생성하고 git 허브 저장소에 추가하십시오.

ssh-keygen -t rsa

제 경우에는 효과가있었습니다.

참조 URL : https://stackoverflow.com/questions/24688700/android-studio-push-failed-fatal-could-not-read-from-remote-repository

반응형