「他のPC」のアップストリームリポジトリに同じリモートアドレスを使用しているかどうかを確認します。
次を使用できます。
- あなたがしたように、httpsアドレス:しかし、あなたのsshキーは関与しません
- sshアドレス:そしてここに示され
git@github.com:[repo_owner_username]/[repo_name].git
ているように設定ファイルを使用します。
つまり、sshキーの使用を期待する場合は、httpsではなくssh urlを使用する必要があります(GitHubの資格情報、つまりGitHubのログインとパスワードを使用し_netrc
、Windowsまたは.netrc
Unixで「sshキーではなくgithub"と同期しています)。
OPが以下に言及しているように、この場合の問題はbbが説明しているものと同様でした。
非対話型シェルを使用する場合のGitPATHの問題の解決策
>Linuxの場合
git config remote.origin.uploadpack '/home/<user name>/bin/git-upload-pack'
git config remote.origin.receivepack '/home/<user name>/bin/git-receive-pack'
(または、OPの場合のサーバー上のgitインストールパスを考慮して:
git config remote.origin.uploadpack '/home/bin/git-upload-pack'
git config remote.origin.receivepack '/home/bin/git-receive-pack'
)。
>Windowsの場合
git config remote.origin.uploadpack 'libexec/git-core/git-upload-pack'
git config remote.origin.receivepack 'libexec/git-core/git-receive-pack'
上記の解決策はうまく機能しますが、サーバー上のリモートリポジトリを追跡しているローカルgitリポジトリがすでにあることを前提としています。
リポジトリのクローン作成は同じエラーで失敗します。
git clone -u /home/<user>/bin/git-upload-pack <user>@<host>:/<path-to-repo>
git clone -u /home/bin/git-upload-pack <user>@<host>:/<path-to-repo>