所以我在我的项目中使用mercurial,我是唯一的开发人员。 我通常使用默认分支进行实际开发,我使用一些短期分支用于新功能,这很好:我创建它们,编写新功能,如果它工作得很好,我将该分支合并到默认分支中,从不再次使用它。 但是我想在不同的分支中编写文档,因为我真的不想用文档提交“污染”默认分支。
在我为默认分支中的内容编写了足够的文档后,我合并了主分区中的docs
分支。但是过了一会儿我想再次使用docs
分支,我必须从主分支中提取更改,或者创建另一个新分支。
处理此问题的最佳工作流程是什么?我的做法完全错了吗?
答案 0 :(得分:1)
将文档放置在源代码管理中有点奇怪。如果文档是二进制文件(.doc / .docx / .xlsx),则Hg将无法合并它们。如果你要存储.html,.xml或一些纯文本格式,那么它会做得稍微好一些。有一些开源系统允许您使用Hg并提供单独的文档管理(Redmine,用于一个)
假设您刚刚将docs
合并到default
中,您可以通过以下方式继续使用docs
分支:
> hg update docs # update to the docs branch
> hg merge default # merge default into docs branch
(do some work)
> hg commit -m "adding new things to docs branch"
(merge into default when ready)
通过将default
合并到docs
,您确保docs
包含default
上存在的所有更改。在docs
上执行后续提交将有效地允许您继续在该分支上工作。另一种说法是合并在Hg中具有方向性 - 如果您希望docs
与default
保持同步,则必须明确执行该合并。
答案 1 :(得分:0)
要从与原始文档分支合并的子项再次开始使用docs分支,只需将工作副本更改为分支并提交给它。
如果您在docs分支上有更改,那么您需要先进行合并才能提交。