9

我想让它每次创建新存储库时,默认情况下都会自动将某些过滤器添加到我的 .hgignore 文件中。

例如,对于 C# 项目,我希望添加以下内容:

glob:bin/*
glob:obj/*

这可能吗?如何?

如果不能自动化,将 .hgignore 文件从一个存储库复制到另一个存储库是否至少安全?

4

5 回答 5

9

我使用 ~/.hgignore 并将其 cp 到我的 repo 中。

在我的 ~/.hgrc 中:

[ui]
ignore.other = ~/.hgignore

我只是把非常明显的东西放在那个里面。并将其复制用于项目特定的东西。

我不认为它完全符合您的要求,因为没有自动化,但它可以解决问题。

Windows 用户,请参阅下面的 Ry4an 评论。

于 2009-11-23T20:22:11.437 回答
4

澄清一下,将 a.hgignore从一个存储库复制到另一个存储库是安全的,它只是一个普通的旧的简单文本文件。

于 2009-11-23T21:53:34.003 回答
3

您可以使用 post-init 钩子为您执行此操作:

[hooks]
post-init.ignore-bin = echo 'glob:bin/*' >> .hgignore
post-init.ignore-obj = echo 'glob:obj/*' >> .hgignore

此表单仅适用于mkdir sample && cd sample && hg init创建 repo 的样式如果您使用更快的hg init sample表单,它会将新.hgignore文件转储到当前目录中。

如果您喜欢使用hg init name.

于 2009-11-23T21:15:05.010 回答
1

hg add .hgignore?

也许您可以从仅签入该文件的存储库中克隆。:)

否则你必须编写一个小扩展以hg init某种方式做到这一点

于 2009-11-23T20:18:06.483 回答
0

在 TortoiseHg 选项卡下的 TortoiseHg 设置中,用户可以指定 Repo Skeleton 的路径。您可以将预定义的 .hgignore 放在那里,它会在 hg init 期间自动复制。

另见: https ://foss.heptapod.net/mercurial/tortoisehg/thg/-/issues/3569

于 2021-09-08T06:58:18.703 回答