我希望有一个存储库,它是我在几个项目中使用的框架。我希望能够克隆框架,然后将其克隆到一个全新的项目中。我也希望仍然能够从框架中推送变更集,尽管它不是更安全的。
发布于 2011-06-22 15:42:19
我假设您希望将对框架专用文件的更改推送到框架代码库,但当然您不希望将其他特定于项目的更改推送到框架存储库。
如果您能够将框架代码作为单独的实体使用,并且只需将其#include (使用C++术语)到您的项目代码中,那么我建议您查看subrepos。
将框架设置为子存储库意味着您的新项目将包含作为子目录的框架。如果您的一个项目更新了框架,您可以只推送该子存储库,并将其拉入其他项目中,这意味着它们都可以使用最新版本,或者被锁定到框架的特定版本。
documentation介绍了它的工作原理,或者可能有一些关于在StackOverflow上设置它们的有用提示。
发布于 2011-06-22 05:24:52
您可以使用普通的hg clone操作克隆存储库。
hg push的默认路径将是您克隆的位置,但是您可以愉快地执行hg push <other_loc>。
如我所料,如果您想要将推送和拉取操作设置为默认路径,只需编辑.hg/hgrc的[paths]部分即可。例如,如果您从以下内容开始:
[paths]
default = ssh://hg@someserver/myrepo您可以将其更改为
[paths]
default = ssh://hg@someotherserver/mynewrepo
source = ssh://hg@someserver/myrepo这样,如果需要,您可以从source中拉出。
您甚至可以配置不同的默认push和pull路径,如文档中所述的here
https://stackoverflow.com/questions/6431983
复制相似问题