Mercurial发布管理

Jad*_*ath 10 mercurial dvcs

我使用mercurial进行源代码控制.我希望有一个主开发分支,然后有时间点与"v1.0""v1.01"和"v2.0"对齐,这样我可以随时下拉说"v2.0 "并粉碎一些错误.我听说有些人说我需要标签,有人说我需要书签,有些人说我需要命名分支,还有人说我只需要维护多个克隆的存储库.

从我的观点来看,多个克隆回购似乎是一个糟糕的选择,因为我喜欢DVCS的一个方面是,一旦你克隆了"回购",你就拥有了所有过去的历史,并且如果你的中央服务器烧毁,可以完全从某些笔记本电脑恢复.如果您的回购分散在各地,我觉得您失去了这个好处,除非您希望人们克隆5个回购并在本地维护它们的计算机.这让我很担心,因为大多数人都说这是一个很好的方法,但从逻辑上讲,这对我来说没有意义.(我知道这不是一个正确的备份方式,但是如果没有回到服务器就无法完全访问部分repo对我来说似乎很奇怪)

所以对我而言,将所有内容保持在一起的方法必须是标签,命名分支或书签.但是,我似乎无法区分这些.人们倾向于将书签解释为"有点像标签,有一些警告",并且将分支命名为某种移动标签,这可能更适合使用克隆.

我真的很喜欢git样式分支(单个repo,多个分支),但是,我不想诉诸奇怪的插件或黑客让它看起来像git.我想了解正确的善变方式.

奖励:"小规模"分支如何适应混合,即你想在自己的分支中处理一个小功能?

pyf*_*unc 0

Mercurial 或 Git 等 DVCS 可以轻松克隆存储库。这并不意味着您将其用于发布管理工作流程。

每个人都拥有完整的 Mercurial 存储库只是 DVCS 的副作用。这意味着当主存储库丢失时会存在冗余。

您可以使用 DVCS,这样您就可以拥有一个主存储库,您可以在其中推送更改并从中提取更改,就像客户端-服务器 VCS(颠覆)一样,并具有可以离线工作的附加优势。

对于您的发布管理工作流程,您仍然应该查看

  1. 书签、标签和分支。

关于这些主题中的每一个都有足够的讨论。

以下提供了有关使用克隆、书签和命名分支进行分支的良好简要信息