1
1
如何使用MQ: $ hg qnew -m "Changes for client0" client0 ... change the file ... $ hg qref # update the client0 patch with the changes $ hg qpop # pop the changes off the queue stack ... develop like normal ... ... client0 asks for a build ... $ hg qpu # apply client0's patch $ make release $ hg qpop 如果你要和很多客户打交道的话,会变得有点挑剔,但这可能值得考虑。 当然,您可以做的另一件事就是提交一堆.diff文件: ... make changes for client 0 ... $ hg diff > client0.diff $ hg revert --all $ hg add client0.diff $ hg ci -m "Adding client0 changes" ... develop ... ... client0 asks for a build ... $ patch -p1 < client0.diff $ make release $ hg revert --all |
2
4
大卫说的对,你不能只在一个文件上有一个分支,但值得指出的是,人们通常有只改变一个文件的分支。由于分支元数据存储在变更集中,并且由于变更集中只包含增量(变更),因此具有只更改单个文件的分支几乎是瞬间创建、更新、提交和合并,而且几乎不占用磁盘空间。 结果,这是处理每个客户配置的一种非常常见的方法。在一个分支中为它们保留微小的更改,并在您想要更新它们的部署时,将发生开发的主分支合并到该分支中。 |
3
1
不,不可能。Mercurial中的一个分支是整个存储库状态的快照。 但是,您可以使用cvs,因为cvs跟踪每个文件的更改:) |
Teck-freak · 压缩mercurial存储库-推荐的方式? 6 年前 |
mika · mercurial中是否可能合并章鱼 7 年前 |
Sergii Tanchenko · 在所有子目录上运行hg pull 7 年前 |
David · 可能有2台mercurial服务器,使用相同的数据库 7 年前 |
Willard · 如何撤消Mercurial更新 7 年前 |
ngoldbaum · 禁用mercurial的颜色和分页 7 年前 |