全球hgignore使用情况

Ani*_*esh 23 mercurial hgignore

在我的mercurial.ini文件中,我调用了一个全局hgignore文件,如下所示:

[ui]
ignore = ~/hgignore.ini
Run Code Online (Sandbox Code Playgroud)

这是指hgignore.ini文件,该文件与mercurial.ini文件位于同一目录中.

  1. 本地hgignore是否覆盖全局hgignore?
  2. 如果是这样,是否建议将单个全局hgignore标记为相关部分,或者为一般模式设置全局hgignore文件,并为特定repo设置特殊模式的单个本地hgignore文件?

通过标记相关部分的全球hgignore,我的意思是:

syntax: glob

# VISUAL STUDIO

*.obj
*.pdb
*.suo
[Bb]in
[Dd]ebug*/
[Rr]elease*/

# TEMPORARY FILES

*.log
*.bak
*.cache    
Run Code Online (Sandbox Code Playgroud)

krt*_*tek 21

全球.hgignore被"添加"到本地.这意味着将考虑每个存储库中的全局内容,但也会考虑本地内容.

对于第二个问题,我认为最好的答案是:这取决于你想要的东西;)

  1. 如果您希望对每个存储库忽略的内容进行非常精细的控制,请转到本地版本.
  2. 如果您希望每次创建存储库时都不打扰,请将所有内容添加到全局文件中.
  3. 介于两者之间以满足您的需求......

在我的情况下,我使用它们.全局.hgignore包含项目文件(Visual Studio,Netbeans),备份文件(.bak,vim),库(dll,so等).对于每个项目,我在本地文件中放置了特定的内容.

  • 除非您只是将其用作编辑器,否则我不建议忽略Visual Studio项目文件.项目文件包含编译应用程序所需的重要信息,任何克隆存储库的人都需要这些信息.如果他们必须自己创建它,那么他们可以使用不同的设置创建它并获得不同的输出. (3认同)
  • 我包含项目文件,但不包括解决方案和suo文件 (3认同)