如何跟踪开发分支中的文件,但不跟踪主(或默认)分支中的文件

时间:2015-03-04 16:47:55

标签: mercurial branch atlassian-sourcetree git-flow

我有projectA执行projectB。 ProjectB将ProjectA的构建信息写入ProjectA.buildInfo。

我有一个用于projectB的Mercurial repo,并使用sourceTree使用HgFlow(git-flow工作流程)。 我希望ProjectA.buildInfo成为我的mercurial repo的develop分支的一部分,但不是默认分支的一部分。

当我从默认情况下删除ProjectA.buildInfo时,开发最终会合并回默认值并带来不需要的文件。

1 个答案:

答案 0 :(得分:0)

您只需注意合并即可。每次将开发分支合并为默认值时,hg remove不需要的文件。

为了避免这种(容易的)错误发生,我建议通过提交钩子来抵御它。该钩子应检查提交是否在默认分支上完成,并在检测到添加的不需要的文件时失败。另外,在中央存储库(如果有的话)上运行与pretxnchangegroup hook相同或相似的内容。

检查hg help config并在其中搜索有关挂钩的帮助。我们使用钩子来避免人们将构建文物提交给每个分支,你可以扩展它:https://hg.openttdcoop.org/misc/files/tip/mercurial/hooks/check_commit.py