如何使用Mercurial(hg)拥有多个工作区?

时间:2011-11-07 16:25:01

标签: mercurial workspace

我只是试着绕着Mercurial,所以这可能是一个愚蠢的问题..

打开我希望在我的机器上编译多个版本的程序,例如,我可能需要在调试器中单步执行“工作版本”和“蕨菜”版本,直到我找到行为方式不同。

在检查完毕后,我也想检查一个干净的工作区,所以我可以检查(通过构建)我没有忘记添加文件。

在大多数源代码控制系统中这很容易做到,但Mercurial似乎不支持这一点。我错过了什么?

3 个答案:

答案 0 :(得分:2)

Mercurial比大多数版本控制系统更好地支持此模型。

诀窍在于您可以在计算机上拥有多个相同代码的存储库。每个存储库都支持一个工作目录,您可以在其中保存代码。

您可以在存储库之间移动更改,或者从这些更改移动到其他计算机上的存储库,例如中央存储库。

Mercurial用户可能会读取您的声明“我还想在检查后将其签出到干净的工作区......”作为“我希望在提交检查后克隆存储库的新副本码。”这很容易做到。

答案 1 :(得分:1)

  • hg clone URL dir1
  • hg clone URL dir2

... 黑客调试修复] ...

  • hg commit
  • hg push
  • cd ...
  • del dir *

答案 2 :(得分:1)

Anther选项是Share Extension,随 Mercurial 1.3 或更高版本一起发布。

See Does mercurial (hg) have functionality similar to git’s worktree?