在使用 VisualStudio2008时,什么是对.hgignore 文件的良好设置?
我大多数时候都是自己开发的,只是偶尔克隆一下存储库,让别人来处理。
我在想 obj 文件夹。所以..。SIN,.用户档案等。它们可以只是包含在内吗? 还是有些文件我不应该包含在内?
谢谢!
现在我要做的是: 忽略所有.pdb 文件和所有 obj 文件夹。
# regexp syntax. syntax: glob *.pdb syntax: regexp /obj/
这是特定于 C # 项目的,但是我忽略了这些文件/目录:
*.csproj.user /obj/* /bin/* *.ncb *.suo
*.csproj.user
/obj/*
/bin/*
*.ncb
*.suo
在忽略所有这些文件之后,在其他机器上运行仓库中的代码没有任何问题。找出你需要保留什么的最简单的方法是复制一份文件夹,然后开始删除你认为不必要的东西。继续尝试构建,只要能够成功构建,就继续删除。如果删除过多,请从源文件夹复制它。
最后,您将拥有一个完整的目录,其中包含必须提交的唯一文件。
下面是我为 C # Visual Studio 项目准备的. hgignore 的内容:
syntax: glob *.user *.ncb *.nlb *.suo *.aps *.clw *.pdb *\Debug\* *\Release\*
一些注意事项:
下面是我用于 VS2008的标准. hgignore 文件,它最初是从一个 Git 忽略文件修改过来的:
# Ignore file for Visual Studio 2008 # use glob syntax syntax: glob # Ignore Visual Studio 2008 files *.obj *.exe *.pdb *.user *.aps *.pch *.vspscc *_i.c *_p.c *.ncb *.suo *.tlb *.tlh *.bak *.cache *.ilk *.log *.lib *.sbr *.scc [Bb]in [Dd]ebug*/ obj/ [Rr]elease*/ _ReSharper*/ [Tt]est[Rr]esult* [Bb]uild[Ll]og.* *.[Pp]ublish.xml
返回文章页面我的 Mercurial. hgignore 文件内容:
syntax: glob #-- Files *.bak.* *.bak thumbs.db #-- Directories App_Data/* bin/ obj/ _ReSharper.*/ tmp/ #-- Microsoft Visual Studio specific *.user *.suo #-- MonoDevelop specific *.pidb *.userprefs *.usertasks
请记住,我主要在 WinForms、 ASP.NET MVC 和 Mobile 项目中使用 Microsoft Visual Studio,偶尔也会使用 MonoDevelopment。根据您的工具集和项目类型,您可能会遇到应该忽略的其他文件。
我尝试将 CodePaste.NET 上的最新版本保留在 http://codepaste.net/zxov7i上
我觉得自己被排除在谈话之外了。这是我的。Hgignore 文件。它涵盖了 C # 、 C + + 和 Visual Studio 开发的一般内容,包括 COM 内容(类型库)、一些最终构建器文件、 CodeRush、 ReSharper 和 Visual Studio 项目升级。它也有一些现代(2015年)网络开发的忽视。
syntax: glob * - [Cc]opy * - [Cc]opy/ * - [Cc]opy (?)/ * - [Cc]opy.* * - [Cc]opy (?).* **/.* **/scss/*.css *.*scc *.FileListAbsolute.txt *.aps *.bak *.bin *.[Cc]ache *.clw *.css.map *.eto *.exe *.fb6lck *.fbl6 *.fbpInf *.ilk *.lib *.log *.ncb *.nlb *.nupkg *.obj *.old *.orig *.patch *.pch *.pdb *.plg *.[Pp]ublish.xml *.rdl.data *.sbr *.scc *.sig *.sqlsuo *.suo *.svclog *.tlb *.tlh *.tli *.tmp *.user *.vshost.* *.docstates *DXCore.Solution *_i.c *_p.c __MVC_BACKUP/ _[Rr]e[Ss]harper.*/ _UpgradeReport_Files/ Ankh.Load Backup* [Bb]in/ bower_components/ [Bb]uild/ CVS/ [Dd]ebug/ [Ee]xternal/ hgignore[.-]* ignore[.-]* lint.db node_modules/ [Oo]bj/ [Pp]ackages/ PrecompiledWeb/ [Pp]ublished/ [Rr]elease/ svnignore[.-]* [Tt]humbs.db UpgradeLog*.*
我用的其他一些方法:
output PrecompiledWeb _UpgradeReport_Files #Guidance Automation Toolkit *.gpState #patches *.patch
这里有一些讨厌的东西: Matlab 和 Excel/Office 自动保存。
# use glob syntax syntax: glob # Matlab ignore files *.asv # Microsoft Office ~$*
如果我不小心添加了它们,然后关闭打开的真正文件,Excel 和/或 Matlab 将删除自动保存,然后 Mercurial 将停留在不知道他们去了哪里。我相信还有其他的程序可以做类似的事情。