问题
I am using Git Bash on Windows 7. We are using GitHub as our repository origin.
Every time I push or pull I have to provide user and password credentials. I know that my SSH keys are set up correctly, otherwise I would not be able to access the repository. (That is, once I enter my credentials the push/pull works correctly.)
I have entered
git config --global user.name myusername
git config --global user.email myemail
git config --global github.user myusername
git config --global github.token mytoken
But nonetheless I am being asked for credentials each and every time I push/pull.
回答1:
Make sure you are using the SSH URL for the GitHub repository rather than the HTTPS URL. It will ask for username and password when you are using HTTPS and not SSH. You can check the file .git/config or run git config -e or git remote show origin to verify the URL and change it if needed.
回答2:
From Git Bash I prefer to run the command:
git config --global credential.helper wincred
At that point running a command like git pull and entering your credentials one time should have it stored for future use. Git has a built-in credentials system that works in different OS environments. You can get more details here: 7.14 Git Tools - Credential Storage
回答3:
For those who are using access token and a Windows environment, there is a simple way to do it:
Start menu → Credential Manager → Windows Credentials → find the line (Git: https://whatever/your-repository/url) → edit, user name is PersonalAccessToken and password is your access token.
回答4:
If you are a Mac user and have keychain enabled, you to need to remove the authorization information that is stored in the keychain:
- Open up Keychain access
- Click "All items" under category in the left-hand column
- Search for git
- Delete all git entries.
Then you should change your username and email from the terminal using git config:
$ git config --global user.name "Bob"
$ git config --global user.email "bob@example.com"
Now if you try to push to the repository you will be asked for a username and password. Enter the login credentials you are trying to switch to. This problem normally pops up if you signed into GitHub on a browser using a different username and password or previously switched accounts on your terminal.
回答5:
Try ssh-agent for installing the SSH key for use with Git. It should auto login after use of a passphrase.
回答6:
If your repo is of HTTPS repo, git config -e give this command in the git bash. Update the username and password by opening in insert mode, change the password or username give :x and Cntrl+z keys it will save and exit
So, From then while you pull / push the code to the repository it will not ask for password.
回答7:
With git bash for Windows, the following combination of the other answers worked for me (repository checked out using the GitHub client i.e. https, not ssh):
- Generate a Personal Access Token
- Start a git bash session within your repo
- run
git config --global credential.helper wincred - run
git pull - give PersonalAccessToken as the username
- give the Personal Access Token as the password
来源:https://stackoverflow.com/questions/8840551/configuring-user-and-password-with-git-bash