如何提交/推送更改为" live"分支,然后继续我的"测试/开发"科?

时间:2015-03-13 14:00:00

标签: version-control mercurial tortoisehg revert

我很擅长处理大型项目并使用任何形式的版本控制,所以请耐心等待。

我有一个在本地/内联网网络服务器上运行的项目。我使用mercurial进行版本控制,hgworkbench / turtoisehg作为GUI。到目前为止,我只是提交并将我的更改推送到存储库default分支。

现在是时候首次将项目部署到实时服务器了。为了在实时服务器上运行,我必须对项目进行一些更改,主要是替换连接字符串,域名和链接/引用。更改完所有内容后,我将这些更改提交到新分支deployment。 (另一个人将从那里处理实际部署。)

一旦我将修改过的文件推送到deployment分支,我希望我的本地文件回到default分支的最后一个版本并继续从那里工作(假设最后一个参考#是42,推送到新分支是ref#43;所以我希望我的lokal系统具有#42的状态,#44应该是默认分支中#42的直接子项。)

如果不以任何方式破坏任何分支,我怎么能这样做?

1 个答案:

答案 0 :(得分:1)

要查看当前分支:

hg branch

(从TortoiseHg Workbench,您可以看到当前分支" *工作目录*"位于顶部。)

将工作目录更新为default分支:

hg update default

(来自TortoiseHg,使用Repository - > Update ...)

现在您处于default分支,您可以像以前一样提交更改。准备好进行其他部署后,您可以将default的最新更改合并到deployment

hg update deployment
hg merge default
hg commit

(从TortoiseHg开始,首先更新到目标分支,在这种情况下为deployment。然后右键单击default分支的提示并选择"与本地合并... "一旦你复习了,就不要忘记提交合并。)