Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

To use <git push> on Visual Studio Code, but show "Could not read from remote repository."

I started studying Git and GitHub.

And now, I could create my repository to practice and I could push commits to origin repository(in GitHub) on git bash.

But when I tried to push on Visual Studio Code, I have received this error

Permission denied (publickey).

fatal: Could not read from remote repository.

and failed to push to origin repository.

but I already remote local repository to origin repository with ssh key on git bash and I could complete push and pull between local repository and origin repository.

In others' case, they were asked GitHub credentials to push or sync, but in my case, I could not be asked any credentials like ssh key.

In this case, What should I do? Thank you.

like image 715
Irrationnelle Avatar asked Jan 06 '16 13:01

Irrationnelle


People also ask

How do you fix fatal could not read from remote repository please make sure you have the correct access rights and the repository exists?

The Git “fatal: Could not read from remote repository” error occurs when there is an issue authenticating with a Git repository. This is common if you have incorrectly set up SSH authentication. To solve this error, make sure your SSH key is in your keychain and you connecting to a repository using the correct URL.

How do I get the VS Code to recognize Git?

Step 1: Go to the Settings in vscode. Step 2: Open settings. json. Step 4: just add the directory path where git is installed in your system.


1 Answers

I thought the answer by @codewizard was the correct one. Seems VS Code uses 'id_rsa.pub' key only, it was not using my other ssh key pair that git.exe was configured to use.(This key wasn't name id_rsa.) However after generating a new id_rsa key pair, I still got permission denied (publickey).

I Found my answer on this blog entry, seems vs code doesn't have a ssh-agent to interact with?

http://blog.alner.net/archive/2015/08/24/vs_code_with_git_ssh_keys_that_use_passphrases.aspx

The solution on the blog being

  • Open a command prompt.
  • Run "start-ssh-agent" and answer passphrase prompts.
  • Run "code" to launch VS Code from that environment.

I used git-bash
start the ssh agent: eval "$(ssh-agent -s)"
then "code" to launch VS Code

Note: As @JoshuaH points out in the comments, you can create a windows shortcut to simply the steps above. cmd /c start-ssh-agent & code

git fetch started working. However I started to get a openssh passphrase box every x minutes(untimed)

so I then rechecked the key was added again using git-bash
then "ssh-add ~/.ssh/id_rsa"
then git config --global credential.helper wincred

If you want a password prompt every time, then ignore the two previous commands and disable autofetch in VS Code's settings.
"git.autofetch": "true" in VS code settings to "git.autofetch": "false"

like image 93
mushcraft Avatar answered Oct 08 '22 22:10

mushcraft