Reputation: 1799
I am student, and very new to version control software so I am having trouble figuring this out. I am using a Google code Git repository. To access this repository I am using Git Bash on Windows 7. The problem is that when I reach the push step, I am not being prompted for a password. For example:
First I set global variables like this:
git config --global user.name "Your Name"
git config --global user.email [email protected]
Cloned
$ git clone https://[email protected]/p/repository/
Then I made changes to files / added new files etc. and added
$ git add .
Committed
$ git commit -m "Message"
Pulled to make sure I am up to date
$ git pull
Already up-to-date.
But when I push I am not prompted for password
$ git push origin master
fatal: remote error: Invalid username/password.
You may need to use your generated googlecode.com password; see https://code.goo
gle.com/hosting/settings
Any suggestions? Thanks.
Upvotes: 11
Views: 28747
Reputation: 572
I had a completely different issue from the other contributors here.
For me, git was not prompting because my repo was configured with a SSH remote, not a HTTPS remote. To verify if you have the same issue and fix it:
git remote -v
# View existing remotes
# origin [email protected]/user/repo.git (fetch)
# origin [email protected]/user/repo.git (push)
If the remote begins with git@
, perform this change:
git remote set-url origin https://github.com/user/repo.git
# Change the 'origin' remote's URL
git remote -v
# Verify new remote URL
# origin https://github.com/user/repo.git (fetch)
# origin https://github.com/user/repo.git (push)
Upvotes: 0
Reputation: 789
For similar issues NOT specific to machine.google.com, you can try removing or updating the saved git password in windows credential manager. My system had my old password saved:
credit: https://github.com/Microsoft/Git-Credential-Manager-for-Windows/issues/141
Upvotes: 18
Reputation: 345
Put the following command in git bash
git config --global core.askpass /usr/libexec/git-core/git-gui--askpass
Upvotes: 0
Reputation: 83
The comment by ufk is the correct answer. To be more explicit, if you push with
git push https://code.google.com/p/name-of-project/ master
you will be prompted for username and password (assuming .netrc is not set as specified by OP). Instead of master you could specify another branch, but omitting the branch probably won't work.
Upvotes: 2
Reputation: 6521
Edit: Looks like you can't access google code successfully by putting the username in the URL (at least as of August 2011), see this: netrc not accepted by git
That said, this might work:
Taken from the URL shown above (you have to visit the site):
For Git repositories, you can add the following line to your .netrc file recording your password for each repository domain you have commit access to. Make sure you have set the permissions on .netrc so that only your user account can read it.
machine code.google.com login [email protected] password mypasswordXXX123
Once you have the above item, it looks like in Git Bash you should be able to update your _netrc file like this:
echo "machine code.google.com login [email protected] password mypasswordXXX123" > $HOME/_netrc
Upvotes: 4