0

我已经制作了我的存储库的副本并尝试通过 Tower 推送我的代码。但是,这似乎不起作用:

Pushing to https://mygoogleusername@code.google.com/p/hp-xxxxxx/
fatal: remote error: Invalid username/password.
You may need to use your generated googlecode.com password; see   
https://code.google.com/hosting/settings

我已按照 Google 的说明进行操作,但出了点问题,我不知道是什么:

git clone https://mygoogleusername@code.google.com/p/hp-xxxxxx/ 

To push your changes, authenticate with your Google Account and your generated googlecode.com password.

在 Tower 中,编辑 URL 连接信息我输入了以下内容:

在网络上的 Google Code User Preferences -> Security 下,我尝试了选中和未选中以下选项:

  • 使用 Git 或 Mercurial 客户端时接受 myusername@gmail.com Google 帐户密码。为确保您的密码安全,请始终使用来自以下网站的最新客户端:

有什么问题?

4

2 回答 2

1

您可以使用 .netrc 方法进行身份验证,我遇到了同样的问题,但是当我尝试 .netrc 方法时,它没有任何问题。

以下是步骤:

echo machine code.google.com >> ~/.netrc
echo login <google_email_address> >> ~/.netrc
echo password <generated_password> >> ~/.netrc
chmod go= ~/.netrc

然后代替:

https://<username>@code.google.com/p/<project_name>/ 

利用

https://code.google.com/p/<project_name>/ 

即没有用户名,它会正常工作。

注意:您不必在 Tower 中指定任何用户名或密码,因为在进行服务器间通信时 *nix 会自动检查 .netrc 文件。

于 2013-02-13T09:31:41.423 回答
0

这里的问题是 Tower 仅支持通过符合标准的 URL 方案进行身份验证。

由于 Google 代码在进行身份验证时实际上并不使用 URL 的用户名部分,因此您必须像以下帖子中提到的那样规避这一点: 使用 Google 代码项目验证 SourceTree

简而言之,您必须使用您的用户名和密码创建一个 .netrc 文件 - 并在 Tower 中完全从 URL 中删除用户名部分。

于 2012-09-27T16:12:50.867 回答