9
|
Paul D. Waite · 技术社区 · 15 年前 |
![]() |
1
5
尝试 HgSubversion . 它允许你这样做。您可以在本地将一个(部分)SVN存储库克隆到一个HG存储库,并远程使用HG本地和SVN(按和拉可以实现您期望的操作)。 过去我用它取得了一些成功,但没有丰富的经验。 |
![]() |
2
8
我在一家使用cvs的公司工作,所以hgSubversion不是一个选择。几天前我也遇到了同样的问题,并基于此开发了一个工作流: 我创建了一个mercurial存储库,其中我的cvs存储库是,我将其视为“只读的”。然后我将这个“只读”的hgrrepo克隆到工作存储库,在那里我在本地进行更改/修复。我已经为我所做的每个特性和修复克隆了repo,但是您也可以只拥有一个repo,并使用不同的分支策略来管理您的开发。这里是 a good overview 这些策略。 此工作流的关键在于拥有“只读”存储库。我曾经在我创建的第一个Mercurial存储库中进行过修改,它位于CVS之上。这是可行的,但是当从cvs更新时会变得混乱。通过拥有这个额外的层,您可以分别处理自己的更改和从cvs更新。 与cvs保持同步 每当cvs发生变化时,我都会更新cvs。对于“readonly”hg存储库,这将显示为修改过的文件。要同步mercurial,我只需
(所以,你会在我的hg日志中看到很多这些信息)。此时,我的“只读”存储库与cvs同步。现在我可以去我克隆的任何一个存储库并发布一个
将更改从hg提交回cvs
换个方向,当我想提交到cvs时,我将进入我的一个工作存储库,在那里我已经将更改提交到了hg。然后我
不可否认,此工作流中存在粗糙点。您可以在hg中进行多个更改,这些更改加起来只对cvs/svn进行了一次更改,这样历史记录就不会保存在cvs/svn中,您必须总结提交消息。您必须手动管理使cvs和“readonly”存储库保持同步。这样做的好处是,您不需要安装任何额外的扩展—您只需要从两个角度处理文件本身。所有发生的事情都是透明的,在你的控制之下。 我仍然在努力工作,但到目前为止,这个工作流程已经相当不错了。 Harvey 提供了一个很好的图表,并指出此工作流适用于任何其他VCS: |
![]() |
3
2
你可以找到一些关于这个的信息 wiki page . |
![]() |
Teck-freak · 压缩mercurial存储库-推荐的方式? 7 年前 |
![]() |
mika · mercurial中是否可能合并章鱼 7 年前 |
![]() |
Sergii Tanchenko · 在所有子目录上运行hg pull 7 年前 |
![]() |
David · 可能有2台mercurial服务器,使用相同的数据库 7 年前 |
![]() |
Willard · 如何撤消Mercurial更新 7 年前 |
![]() |
ngoldbaum · 禁用mercurial的颜色和分页 7 年前 |