使用Mercurial和TortoiseHg整合外部变化

时间:2014-08-16 00:51:14

标签: mercurial branch tortoisehg

我正在寻找有关如何最好地组织我的存储库来处理外部更改的建议。而且,我有一个关于在TortoiseHg中创建分支的简单用户问题。这是我第一次设置这类东西,所以我很难找到处理它的最直接的方法。

我在服务上设置了一个网站。我们使用的主题基于他们的一个示例。有时候,他们会更新我们所依据的主题。而且,在大多数情况下,我希望将大部分变更纳入其中。

让我沮丧的部分是,我不一定想要融入他们所有的变化。那么,创建两个分支是正确的方法吗?一个是规范版本,直接来自它们,只包含他们的编辑?另一个是我们的发布分支,我们只合并他们的部分变化?

规范分支会持续存在吗?或者,它是否仅在他们执行新转储时才存在,然后我将手动合并回到我的发布分支中并进行我想要合并的更改?

如果它是持久性的,有没有办法使用TortoiseHg在根部创建分支?或者,我是否需要深入了解命令行语法来做到这一点?我知道这是这个项目的一次性事情。但是,我正在寻找有关如何在其他软件情况下执行此操作的建议,我想回到早期版本来制作补丁。我确定有一个针对这种情况的教程,但我无法想出正确的搜索短语来找到它。至少,不使用TortoiseHg。

1 个答案:

答案 0 :(得分:0)

如果上游主题也受版本控制(在任何 SCM中,由Mercurial支持),则有两个长期分支,其中将一些变更集子集从VENDOR移植到{{1}自然而然,快速而简单的方法(另一种可能的解决方案是在分支顶部使用vanilla主题的MQ补丁,但它稍微更难的方式)

如果原始主题没有版本化,您可以不时地获取源代码,编辑(合并自己的更改,删除不需要的内容)并将自己的变更集提交到单分支存储库

  

有没有办法使用TortoiseHg在根处创建分支?

我无法回忆或找到(使用快速搜索) nice&明显的以GUI方式创建分支的方式(即工具栏上的大按钮"分支"),但你可以在提交阶段创建分支(无论如何,分支至少不存在,至少存在此分支中的一个变更集未提交)。为了创建分支,从MY变更集开始,您有:

  • 更新为<some old>变更集(RClick - <some old>
  • 提交(不改变任何内容),但在提交对话框中使用&#34; Branch&#34;提交工具栏上的按钮(请参阅Update...),以便将旧的分支名称更改为新的分支名称(请参阅1

New Branch in THG