web-dev-qa-db-ja.com

Android Studio-プッシュに失敗しました:致命的:リモートリポジトリから読み込めませんでした

Android St​​udioにgitプロジェクトがあり、BitBucketにリモートがあり、HTTPSの代わりにSSHを使用するように変更しました。 AtlassianのSourceTreeを使用してすべてを機能させることができますが、Android St​​udioでプロジェクトをプッシュしようとするたびに

プッシュに失敗しました:致命的:リモートリポジトリから読み取ることができませんでした。

誰が何が起こっているのかについての手がかりを持っていますか?

56
mFeinstein

これはおそらくIntellijの問題です。キーはsshによってネイティブに管理され、Intellijには独自のsshプログラムがあります。

設定に移動して、git-> ssh実行可能ファイルを検索し、nativeを選択します

ここに見られるように: IntelliJ IDEAのgit:リモートリポジトリから読み込めませんでした

77
Nicolas Zozol

[設定]> [バージョン管理]> [Git]に移動します。 SSH実行可能ファイルが「ネイティブ」に設定されていることを確認してください。

既に設定されている場合は、「組み込み」に切り替えて適用し、再度「ネイティブ」に切り替えます。

enter image description here

18
Johnny

Android StudioまたはIntelliJでGit SSH検証を行うには、次の2つの方法があります。設定-バージョン管理-Git-SSHで実行可能-「組み込み」または「ネイティブ」

  1. 組み込み:認証にGitに組み込まれたsshキーペアを使用することを意味します。経由で生成できます
    ssh-keygen -t rsa
    デフォルトの保存パスは"〜/ .ssh/id_rsa"および"〜/ .ssh/id_rsa.pub"です。 BitBucketアカウントに公開キーを追加する必要があります。次のようなパス:アカウントの管理-SSHキー-キーの追加
  2. ネイティブ:BitBucketやGitHubなどのネイティブリポジトリホスティングサービスによって生成されたsshペアを使用することを意味します。これは多くの場合、サービスアカウントに自動追加されます。たとえば、GitHubで。 SSHキーのペア「〜/ .ssh/github_rsa.pub」と「〜/ .ssh/github_rsa」が生成され、公開キーがGitHub GUIを介して私のアカウントに自動的に追加されました。そのため、SSH実行可能ファイルを「ネイティブ」に変更するのは簡単な方法です。

とにかく、リポジトリホスティングサービスで正しい公開キーを追加した後、両方の方法を使用できます。

17
Joe Wang

SSH実行可能ファイルはNativeに設定されていましたが、SSHキーファイルのパスワードを設定したため、このエラーが発生していました。

Android studioでパスワードを指定する方法が見つかりませんでしたが、別のsolutionがあり、削除できます$ ssh-keygen -pで実行できるパスワード。ファイルの場所を確認し、古いパスワードを入力して、新しいパスワードを空白のままにします。

新しいキーを作成せずにSSHキーのパスフレーズを削除するにはどうすればよいですか?

6
Lemberg

Android Studio 3.1で同様の問題が発生しました

Preferences> Version Control> Git> SSH executableBuilt-inからNativeに変更しましたが、助けにはなりませんでした。

その後、Android Studioを3.2にアップグレードし、Built-inに切り替えました。これにより、この問題は修正されました。

2

Github.comに移動してリポジトリを開き、USE HTTPS URLをコピーしますAndroidプロジェクトディレクトリ。gitフォルダーで設定ファイルを検索します。

構成ファイルで、github.comからコピーしたURL(httpsを使用)を以前のURLに変更します。設定ファイルを保存して、もう一度プッシュします。これは私のために働いた。

1
taimoorAshfaq

同じ問題が発生しました。 Android Studio。端末またはsthから通常の権限で実行すると、リポジトリをプッシュするために必要なローカルファイルを読み取ることができません。

解決策は、Android現在よりも多くの権限でStudioを再起動することです。

0
mdzeko

私はこの問題に出会い、ついに解決しました。設定には2つの重要なポイントがあります:Androidスタジオ:File-Settings-GitHub:「sshを使用してgitリポジトリをクローン」を選択しないAndroid studio:ファイル設定-Git:「SSH実行可能ファイル」に「組み込み」を選択します

gitHubのアカウントに既にあるSSHは、AndroidスタジオにあるSSHです。AndroidスタジオでSSHを見つける方法を忘れていますが、他の方法で見つけることができます

0
EXEEE

Preferences> Version Control> Git> SSH executableをBuilt-inからNativeに変更しても機能しない場合は、 設定>バージョン管理> GitHub> sshを使用してgitリポジトリのクローンを作成するCHECK IT

0
Atul Bahuguna

私は自分でこれに出くわしましたが、既存の答えは少し不完全でした。

tl; dr:Android Studio/IntelliJのSSHクライアントをビルトインからネイティブに切り替えると、問題が解決する場合があります(私にとってはそうでした)。

Android Studio(事実上特殊なIntelliJ IDEA)には独自の組み込みSSHクライアントが付属していますが、必要に応じてネイティブ(プラットフォーム/ OS依存)に切り替えることができます。これを変更するには、Android Studioオプションを開き、「git」を検索し、SSH実行可能ドロップダウンで「native」を選択します。

私の場合、Android Studio、but git Pushうまくいきました。ネイティブ(私の場合はOSX SSH)に切り替えることで問題が解決しました-Android Studio。からBitBucketにプッシュできるようになりました。

他の答えは主題に触れましたが、SSH実行可能ファイルとそれらが使用するキーの間でいくつかの混乱があったようです。

Android SSH実行可能ファイルの下のStudioヘルプ:

  • 組み込み:IntelliJ IDEAが提供する実装を使用するには、このオプションを選択します。
  • ネイティブ:ネイティブ実装を使用するには、このオプションを選択します。
0
Clay H