【问题标题】:How do I push a new project to a shared Mercurial multi-repository?如何将新项目推送到共享的 Mercurial 多存储库?
【发布时间】:2011-02-18 02:42:43
【问题描述】:

我有一台本地机器(“笔记本电脑”)和另一台机器(“服务器”)上的共享 Mercurial 存储库。

使用 Apache、hgwebdir.cgi 脚本和 Mercurial 1.4 将共享存储库设置为如 in the Mercurial documentation 所述的多存储库。

该设置的工作原理是我可以在 Web 浏览器中浏览项目(存储库),我可以从服务器克隆和拉取,当项目/存储库已经存在于服务器上时,我可以从笔记本电脑推送。

但我无法在笔记本电脑上创建一个新项目(hg init、do stuff、hg commit)并将其推送到共享的多存储库(hg push http://server/hg/my-new-project-name) - 我得到“中止:HTTP 错误 404:不是Found”,大概是因为目录/项目仓库还不存在。

如何将新项目/目录结构推送到在其他地方运行的 Mercurial?我在文档中找不到任何东西,你们是怎么做到的?

【问题讨论】:

    标签: mercurial project-structure


    【解决方案1】:

    您无法使用内置功能通过 http 创建新的远程存储库。您可以选择任一

    1. 使用 ssh 克隆创建:`ssh clone local-repo ssh://you@remote//path/to/repo'
    2. 登录到远程仓库并在你想要仓库的地方执行hg init。之后,您可以推送到新的空仓库
    3. 使用像我在这里写的那样俗气的 http-creation CGI:http://ry4an.org/unblog/UnBlog/2009-09-17

    【讨论】:

    • 好的。现在使用登录到远程和-hg-init,但正在寻找一个一步选项。谢谢:)
    【解决方案2】:

    更新

    我尝试使用 Dropbox,如下所述,但无法使其足够可靠,因此我不推荐该选项。

    下面的原始答案,保留上下文。

    /更新

    我发现了另一种选择:完全跳过 http 和 ssh 以及 using Dropbox for shared repos

    对于一个人多台计算机的场景,它看起来是最简单的选择,而且你可以得到备份作为一个很好的副作用。

    这里是a discussion on Hacker News

    【讨论】:

    • 是的,试过了,但不能让它足够可靠地工作。我已经更新了我的答案。
    猜你喜欢
    • 2016-08-12
    • 2019-06-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多