web-dev-qa-db-ja.com

Gitサブモジュール-権限が拒否されました

私のプライベートgitリポジトリ内に存在するサブモジュールを複製できません。リポジトリ全体にアクセスできます

以下のコマンドを使用したことがありますが、うまくいきません。助けてください。既存のリポジトリにサブモジュールを複製する正しい方法は何ですか?

djrecker$ git submodule update --init --recursive
Submodule 'Path' ([email protected]:Path) registered for path 'App'
Cloning into 'Path'...
Permission denied (publickey).
fatal: Could not read from remote repository.
19
Max

私は同じ問題に直面していました。問題はgithubリポジトリにありました。古いsshキーを使用している可能性があります。

現在のsshキーを更新する必要があります。

Steps involved are:

1. vim ~/.ssh/id_rsa.pub
2. copy the ssh key
3. Go to the github settings
4. Select the option ssh keys
5. Remove the old ssh keys not used anymore.
6. Add a new ssh key.
7. Try running the "git submodule update --recursive"

これは私のために働いた!!

30
arpiagar

私はこの問題を抱えていました。私の場合、公開鍵(〜/ .ssh/id_rsa)がサーバーに正しく設定されていませんでした。

すべてのサブモジュールを取得していることを確認します。

参照: Git update submodule recursive

# This must be called twice. Once for new and once for existing submodules.
git submodule update --init --recursive
git submodule update --recursive

キーの権限の問題を診断するには:

サブモジュールの詳細を確認するには

  • プロジェクトのルートフォルダーで.gitmodulesを開き、問題がないことを確認します。 @VonCで推奨されているように、別のフォルダにクローンを作成してみてください。
  • SSHの使用からHTTPSへのサブモジュールの切り替えが必要になる場合があります。ユーザー名とパスワードを入力できます。しかし、それはチームメイトに問題を引き起こし、自動化を構築する可能性があります。最初に彼らに話してください。
10
SilentSteel
  • Windowsの場合:

私の場合、通常のコマンドライン(Git CMD)を使用していたときに、同じ問題について不平を言っていました。次に、Git Bashを試しましたが、問題はありませんでした。

5
Cem SOYDING

興味深いことに、同様の機会にHTTPSリンクを使用するとうまくいきました。

3
ang3lkar

Linux/GitBashのTortoiseGit/Windowsサブシステムでも同じ問題がありました。解決策は、パスワードの代わりにエージェント(キー)による認証を使用することです。

TortoiseGitの場合:

  • pageantを実行する
  • キーを追加
  • パスワードを入力する
  • TortoiseGitメニュー->サブモジュールの更新...

(ページェントgit cloneがなければ、パスワードを要求して意図したとおりに機能しますが、git updateがエラーで失敗します)

WS4Lの場合:

$ eval `ssh-agent -s`
$ chmod 600 /path/to/key
$ ssh-add /path/to/key

を進めます git submodule update

0
Pavel Peřina

親フォルダーとそのサブフォルダーでgit initを使用して、エラーのあるサブモジュールを作成しました。 .gitフォルダーを削除し、正しい親フォルダーでgit initを最初からやり直しました。

0
doug nelson

私の場合、問題はコンソールがパスワードを要求しなかったことが原因でした。解決策は、コンソールをCMDERからGitbashに変更することでした。 CMDERを使用した場合、このアクセス拒否の問題の原因となったパスワードウィンドウは表示されません。

0
Čamo