32

Every time I want to push and/or pull from the terminal (in Linux) I have to enter a password. How do I remove this so that it pulls and/or pushes without the password?

  • 5
    What is the protocol used by your repo address? ssh? https? – VonC Sep 22 '11 at 8:10
22

Generate a private/public key pair for password-less authentication.

For Linux, your keys are stored in ~/.ssh.

If you already have files in ~/.ssh that's named id_rsa and id_rsa.pub, then you already have a key pair. Append the contents of your public key (that's id_rsa.pub) to the Git repository's ~/.ssh/authorized_keys file.

$ scp ~/.ssh/id_rsa.pub user@git.repo:id_rsa.tmp
$ ssh user@git.repo
$ cat id_rsa.tmp >> .ssh/authorized_keys

If you don't have the key pair, generate one with

$ ssh-keygen -t rsa

Read this for further instructions: http://inchoo.net/tools-frameworks/how-to-generate-ssh-keys-for-git-authorization/

  • @slhck Ah, didn't think of that! It'll be good to know the OS whirlwin is using before posting further instructions, though. – Jin Sep 22 '11 at 8:17
  • Thanks for the pointer. I Have updated the question accordingly! – whirlwin Sep 22 '11 at 8:22
  • 1
    When I run the first command I get a: You appear to be using ssh to clone a git:// URL. Make sure your core.gitProxy config option and the GIT_PROXY_COMMAND environment variable are NOT set. lost connection – MultiformeIngegno Apr 6 '13 at 0:38
23

Run

git config credential.helper store

This will store your credentials in a folder inside root. You need to run git pull/push after this command and give the user name/pwd for the first time. Post this it will not prompt for user/pwd. Details at https://git-scm.com/docs/git-credential-store

  • 3
    this should be selected as the correct answer for this question. IMO, the OP wanted to ask about a solution for https to avoid having to enter username/password again and again, not switching to ssh solution. 1+ for this answer. – Giang Nguyen Nov 4 '16 at 18:37
  • 1
    The best answer – Mohamed Ben HEnda Apr 24 at 22:39
  • Note that store credential helper stores the password on disk unencrypted. – 0xc0de May 24 at 11:25
5

You can also just change your passphrase and replace it by an empty string :
ssh-keygen -p

1

I had created a new branch and after that when I pulling, I had to enter the user name and password. Then I resolve the problem re-cloning the branch with ssh address (which is on the relevant repository site).

For example:

git clone git@github.com:sshare/GLE.git

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.