Storing username and password in Git
Solution 1
Actually what you did there is setting up the author information, just for the commits. You didn't store the credentials. credentials can be stored in 2 ways:
- using the git credential functions: https://git-scm.com/docs/git-credential-store
- change the origin url to "https://username:[email protected]".
- a third alternative is to use an ssh key (as @StephenKitt said). For github configuration, you can find all needed information in GitHub help page
Solution 2
In Terminal, enter the following to enable credential memory:
$ git config --global credential.helper cache
You may update the default password cache timeout (in seconds):
# This cache timeout is in seconds
$ git config --global credential.helper 'cache --timeout=3600'
You may also use (but please use the single quotes, else double quotes may break for some characters):
$ git config --global user.name 'your user name'
$ git config --global user.password 'your password'
Solution 3
Copied this from git scm
$ git config credential.helper store
$ git push http://example.com/repo.git
Username: <type your username>
Password: <type your password>
[several days later]
$ git push http://example.com/repo.git
[your credentials are used automatically]
Solution 4
In linux (Ubuntu 18.04) the username / password can be saved in the file ~/.git-credentials
, just edit the file to use your new username / password.
The file format is quiet easy to understand and manipulate, each line contains credentials for one user / domain, in the following format:
https://<username>:<password>@github.com
https://<username2>:<password2>@bitbucket.com
...
Related videos on Youtube
GypsyCosmonaut
Updated on September 18, 2022Comments
-
GypsyCosmonaut over 1 year
When I do
git push
I get the command prompt like
Username for 'https://github.com':
then I enter my username manually like
Username for 'https://github.com': myusername
and then I hit Enter and I get prompt for my password
Password for 'https://[email protected]':
I want the username to be written automatically instead of manually having to type it all the time.
I tried doing it with
xdotool
but it didn't work out.I have already done
git config --global user.name myusername git config --global user.email [email protected]
but still it always asks for me to type manually
-
Diego Roccia almost 7 yearsyou know you can store credentials with git, right?
-
GypsyCosmonaut almost 7 years@DiegoRoccia yes, mentioned that as well in the question, but it doesn't help.
-
Oleg Rudenko about 5 yearsYou can use as
git config credential.helper store
described here: stackoverflow.com/questions/11403407/… In this case you do not store the password in clear text in the origin URL, but in a file in you profile. (Also not encrypted)
-
-
kodmanyagha about 4 yearsadding username and password to origin url is not good becouse of security reasons but if you feel yourself in secure then this is best path.
-
R. Gurung almost 4 yearshow to cache forever?
-
user2971806 over 3 years@R.Gurung Use
git config credential.helper 'store
in that case, but be aware that this stores yourgit
credentials on disk in plain-text, without any encryption whatsoever. (~/.git-credentials
) -
Albert Renshaw about 3 yearsNote, the above snippet should be --global flagged as well and close its opening
'
such that it reads:git config --global credential.helper 'store'
-
PlasmaBinturong about 2 yearsIf you want the config to be specific of a website (e.g. only for github.com, but not gitlab), you have to use
git config credential.https//github.com ...
instead ofgit config credential.helper ...