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.
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.
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.
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
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"
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With