如何连接本地和远程Mercurial回购?

时间:2014-07-18 18:36:52

标签: linux version-control mercurial dvcs

通常,在Mercurial中,我通过以下方式创建一个新项目:

  1. 创建新的远程仓库
  2. 在本地克隆回购
  3. 更改本地仓库
  4. 将这些更改推送到远程仓库
  5. "远程回购"这实际上是我们的中心/原创" DVCS服务器(http://ourhg.ourorg.example.com等)。

    我现在处于一种情况,我不得不使用代码生成工具来生成简单Web应用程序的源代码。因此,在我们的hg服务器上存在远程仓库之前,源代码存在。我正在寻找我需要执行的确切的shell命令,以便将其正确地推送到远程仓库。

    相信它应该是这样的:

    1. 使用代码生成器生成代码,例如,/home/myuser/myapp
    2. 在我的计算机上本地初始化myapp的hg回购(hg init
    3. 将生成的myapp源代码添加到此本地仓库(hg add,然后hg commit
    4. ourhg.ourorg.example.com上,创建新的远程仓库(手动步骤)
    5. ???
    6. 将位于我的本地仓库中的更改推送到远程仓库(hg push
    7. 知道在步骤#4(创建远程仓库)和步骤#6(推送到远程仓库)之间缺少某些东西。肯定需要一些"连接"我的本地仓库和远程仓库意识到它们代表相同的项目/源代码/等的步骤。这是我的挂断,所以我问:步骤#5 是什么?

3 个答案:

答案 0 :(得分:1)

  

步骤#5是什么?

发现此回购的网址。因为它是空的回购,你可以不用担心“相关|无关”

答案 1 :(得分:1)

您无需关联它们。你可以在当地做hg push URL_OF_REMOTE,它会有效。如果您不希望每次可以在回购中编辑(必要时创建).hg/hgrc并在default=部分中设置[paths]值,则必须提供该网址。像这样的东西

[paths]
default=URL_OF_REMOTE

这是可选的。

答案 2 :(得分:1)

只需使用您的原始步骤,但需要注意:

  1. 创建新的远程仓库
  2. 在本地克隆repo(这会将本地的默认路径设置为remote)。
  3. 更改本地存储库(使用代码生成器应用程序在本地存储库中生成代码)。
  4. 将这些更改推送到远程仓库。
  5. 使用此流程,您不必手动更新远程仓库的路径。