如何使用 Mercurial 上传项目到 Google Code?

如何使用 Mercurial 上传项目到 Google Code?
  1. 我创建了一个本地目录,并在其中创建了一些子目录和文件。
  2. 项目在 code.google.com/hosting 上注册
  3. 安装 Mercurial 并执行hg init
  4. 从 Google 复制了自动生成的密码,但仍然不知道用来做什么。

现在我该如何将本地文件上传到 Google 上的存储库。经过大量的 Google 搜索,几乎所有信息都可供 SVN 用户使用。

我是否必须先在 mercurial 上创建一个分支。如果这太愚蠢,我很抱歉,但我该如何创建一个,网站上没有提到创建、上传或添加。

有人可以分享他是如何开始/上传他的项目的吗?

答案1

pgs 完全正确。当您在 Google(或其他托管服务)上创建项目时,他们会为您创建一个存储库。您需要复制代码,添加/提交(.hgignore当然,在调整之后!)并hg commit -Am "Inintial checkin of project"

如果您尝试将您创建的另一个存储库推送到 Google,则无法成功。这是因为您新创建的存储库与 Google 为您创建的存储库无关(并非源自该存储库)。由于您无法通过 CLI 访问 Google,因此您无法通过挑选特定修订版本来执行不相关的提取的常规解决方法。

如果您已经有一个具有历史记录的存储库,这会令人沮丧。在这种情况下,您必须克隆空的 Google 存储库,然后hg pull(存储库的路径/网址)获取修订,然后提交,然后推送。如果您有大量分支,祝您好运,请确保在推送到 Google 之前没有未解决的头。

这就是为什么我在自己的网站上托管自己的 hg repos,麻烦少得多。

答案2

通过阅读帮助页面,我认为你需要去你的项目的来源页面并克隆存储库(而不是hg init)。然后我相信您可以签入代码,并将hg push其交给 Google。

答案3

事实上,你推送到 Google Code 存储库,而无需先从中克隆。要么直接hg push http://$projectname.googlecode.com/hg从本地存储库执行,要么编辑 .hg/hgrc 并添加如下部分:

[paths]
default = http://$projectname.googlecode.com/hg

然后hg push照常运行。

相关内容