2012-02-08 207 views
4

我是学生,对版本控制软件很新,所以我很难解决这个问题。我正在使用Google代码Git存储库。要访问这个存储库,我在Windows 7上使用Git Bash。问题是,当我到达推送步骤时,我没有被提示输入密码。例如:Git bash for Windows不提示输入密码

首先,我设置全局变量是这样的:

git config --global user.name "Your Name" 
git config --global user.email [email protected] 

克隆

$ git clone https://[email protected]/p/repository/ 

然后我修改了文件/添加新的文件等,并添加

$ git add . 

承诺

$ git commit -m "Message" 

拉来确保我的最新

$ git pull 
Already up-to-date. 

但是,当我推我不提示我密码

$ 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 

有什么建议?谢谢。

回答

3

编辑:看起来你无法通过将在URL中的用户名(至少在2011年8月)成功地访问谷歌的代码,看到这一点:netrc not accepted by git


这就是说,这威力工作:

从URL采取如上图所示(你必须访问the site):

对于Git仓库,你可以添加ŧ他跟随你的.netrc文件记录你已经提交访问的每个存储库域的密码。确保您已经在.netrc上设置了权限,以便只有您的用户帐户才能读取它。

机code.google.com登录[email protected]密码mypasswordXXX123

一旦你有以上的项目,它看起来像在Git的bash,那么你应该能够更新_netrc文件中像这样:

echo "machine code.google.com login [email protected] password mypasswordXXX123" > $HOME/_netrc

+0

我的印象是,因为我在克隆命令中使用用户名,所以我应该提示输入密码,而不应该需要一个_netrc文件。 – CodeNameBrandon 2012-02-08 02:12:34

+0

看起来像这样的事情是以前的一个问题:http://groups.google.com/group/google-code-hosting/browse_thread/thread/21391bc402e94c79?pli=1 - 这里有更多的信息 - http: //code.google.com/p/support/wiki/GitFAQ - 但没有针对此特定问题... – 2012-02-08 02:36:04

+2

在Linux上与google代码具有相同的问题。 git clone可以工作,但突然不提交。从.git/config中删除用户名,强制git重新输入用户名和密码。谢谢!它现在有效 – ufk 2012-02-26 16:37:01

2

通过UFK的评论是正确的答案。更明确的,如果你把与

git push https://code.google.com/p/name-of-project/ master 

,你会被提示输入用户名和密码(假设的.netrc由OP指定未设置)。您可以指定另一个分支,而不是主分支,但省略分支可能不起作用。

0

在git的庆典

混帐配置--global核心将下面的命令。askpass/usr/libexec/git-core/git-gui-askpass