为什么忽略.hgignore?

时间:2011-11-05 00:01:05

标签: mercurial tortoisehg

我对Hg很新,所以请原谅我的无知......

我在Windows 7中使用Mercurial和TortoiseHg。我创建了一个具有以下文件夹结构的存储库:

-- My repo dir
|
|--- .hg
|--- .hgignore
|--- File 1
|--- File 2
|--- ...

我的数据库数据文件存在于repo目录中,但我不希望它们作为存储库的一部分包含在内。我在.hgignore文件中尝试了各种各样的事情,但无论我在Windows Shell中右键单击repo文件夹并转到Hg Commit...,它都包含两个数据库数据文件。要提交的文件列表。是的,我可以手动取消选中它们,但我的想法是,在.hgignore中,它们不会包含在要提交的文件列表中。

这是我目前.hgignore的化身,虽然我尝试过其他一些没有运气的人:

MyDatabase\.mdf
MyDatabase\_log\.ldf

我在这里是愚蠢的,还是TortoiseHg在提交时不尊重/检查.hgignore文件?

更新

终于有了这个工作。正如@Diego建议的那样,我不得不指示Mercurial忘记这些文件。有趣的是,当我按照@ Diego的建议并试图通过命令行忘记它们时,它没有用。我必须转到Windows资源管理器,右键单击文件,然后从上下文菜单中选择TortoiseHg - >忘记档案......

感谢大家的建议。

3 个答案:

答案 0 :(得分:10)

也许mercurial已经在跟踪这些文件了。如果已经跟踪了文件,那么.hgignore没有任何效果。尝试:

hg forget MyDatabase\.mdf MyDatabase\_log\.ldf

然后编辑.hgignore以排除这些文件并提交。

那应该解决它。

答案 1 :(得分:1)

您需要在.hgignore文件的开头添加此行:

syntax: glob

MyDatabase\.mdf
MyDatabase\_log\.ldf

答案 2 :(得分:0)

斯科特 您是否有想要添加到存储库的其他mdf / ldf文件?如果没有,您可以在.hgignore文件中尝试以下内容吗?

syntax: glob
*.mdf
*.ldf