diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 91543ab443..1b94f6cb95 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -28,6 +28,11 @@ high quality, we request that contributions adhere to the following guidelines. In general, the more you can do to help us understand the change you’re making, the more likely we’ll be to accept your contribution quickly. +If a template is mostly a list of files installed by a particular version of +some software (e.g. a PHP framework) then it's brittle and probably no more +helpful than a simple `ls`. If it's not possible to curate a small set of +useful rules, then the template might not be a good fit for this collection. + Please also understand that we can’t list every tool that ever existed. Our aim is to curate a collection of the *most common and helpful* templates, not to make sure we cover every project possible. If we choose not to diff --git a/README.md b/README.md index 14042e94fa..684a1abf2c 100644 --- a/README.md +++ b/README.md @@ -53,6 +53,11 @@ high quality, we request that contributions adhere to the following guidelines. In general, the more you can do to help us understand the change you’re making, the more likely we’ll be to accept your contribution quickly. +If a template is mostly a list of files installed by a particular version of +some software (e.g. a PHP framework) then it's brittle and probably no more +helpful than a simple `ls`. If it's not possible to curate a small set of +useful rules, then the template might not be a good fit for this collection. + Please also understand that we can’t list every tool that ever existed. Our aim is to curate a collection of the *most common and helpful* templates, not to make sure we cover every project possible. If we choose not to diff --git a/VisualStudio.gitignore b/VisualStudio.gitignore index cd8716d314..11c8519425 100644 --- a/VisualStudio.gitignore +++ b/VisualStudio.gitignore @@ -1,16 +1,22 @@ -## Ignore Visual Studio temporary files, build results, and -## files generated by popular Visual Studio add-ons. - -# User-specific files +# temporary files generated by Visual Studio specific to the local user +# contains profile information and other metadata +# remove: if no longer targeting Visual Studio 2013 or earlier *.suo *.user *.userosscache *.sln.docstates - -# User-specific files (MonoDevelop/Xamarin Studio) +# +# new location for Visual Studio 2015 +.vs/ +# +# specific to MonoDevelop and Xamarin Studio *.userprefs +# +# workspace options file +# remove: if no longer targeting Visual Studio 6 +*.opt -# Build results +# build output folders generated by Visual Studio [Dd]ebug/ [Dd]ebugPublic/ [Rr]elease/ @@ -21,27 +27,57 @@ build/ bld/ [Bb]in/ [Oo]bj/ +# +# default build log file +# remove: if no longer targeting Visual Studio 6 +*.plg -# Visual Studio 2015 cache/options directory -.vs/ - -# MSTest test Results +# MSTest +# a test framework from Microsoft +# remove: if you are not using the MSTest runner to run your tests [Tt]est[Rr]esult*/ [Bb]uild[Ll]og.* -# NUNIT +# NUnit +# an open source test framework for .NET +# url: http://www.nunit.org/ +# remove: if you are not using the NUnit test runner to run your tests *.VisualState.xml TestResult.xml -# Build Results of an ATL Project +# ATL (Active Template Library) Project +# remove: if you do not have an ATL project in your solution [Dd]ebugPS/ [Rr]eleasePS/ dlldata.c # DNX +# summary: the environment for cross-platform .NET development +# url: https://github.com/aspnet/dnx +# +# locks the package references for a project to specific versions +# url: https://github.com/aspnet/Home/wiki/Lock-file +# remove: if you would like to lock your dependencies to a specific version +# when committing and prevent package restore from selecting a +# more recent version project.lock.json +# +# build output artifacts/ +# Program Database files created by various compilers +# used when debugging compiled code - the file essentially represents a lookup +# so that symbols can be resolved to the relevant source code +# url: https://en.wikipedia.org/wiki/Program_database +*.pdb + +# Visual SourceSafe hint files to keep the projects and solutions in sync +# with source control - these are no longer necessary once you've moved away +# from Visual SourceSafe +*.vspscc +*.vssscc + + *_i.c *_p.c *_i.h @@ -49,7 +85,6 @@ artifacts/ *.meta *.obj *.pch -*.pdb *.pgc *.pgd *.rsp @@ -60,14 +95,15 @@ artifacts/ *.tmp *.tmp_proj *.log -*.vspscc -*.vssscc .builds *.pidb *.svclog *.scc -# Chutzpah Test files +# Chutzpah +# a JS unit testing framework for commit +# url: https://github.com/mmanela/chutzpah +# remove: if you do not use the Chutzpah test runner in your project _Chutzpah* # Visual C++ cache files @@ -78,47 +114,70 @@ ipch/ *.sdf *.cachefile -# Visual Studio profiler +# temporary files generated by the Visual Studio profiling tools +# remove: if you are not using these features of Visual Studio *.psess *.vsp *.vspx # TFS 2012 Local Workspace +# remove: if you are not using TFVC in this repository $tf/ # Guidance Automation Toolkit *.gpState -# ReSharper is a .NET coding add-in +# ReSharper +# a Visual Studio extension which supports various project types +# url: https://www.jetbrains.com/resharper/ _ReSharper*/ *.[Rr]e[Ss]harper *.DotSettings.user -# JustCode is a .NET coding add-in +# JustCode +# a Visual Studio extension for various project types +# url: https://www.jetbrains.com/resharper/ .JustCode -# TeamCity is a build add-in +# TeamCity +# a Visual Studio extension you can download from your TeamCity server +# url: https://confluence.jetbrains.com/display/TCD9/Visual+Studio+Addin _TeamCity* -# DotCover is a Code Coverage Tool +# DotCover +# a code coverage plugin for Visual Studio +# url: https://www.jetbrains.com/dotcover/ *.dotCover # NCrunch +# a continuous test runner for Visual Studio +# url: http://www.ncrunch.net _NCrunch_* .*crunch*.local.xml nCrunchTemp_* # MightyMoose +# a continuous test runner for Visual Studio +# url: http://www.continuoustests.com/ *.mm.* AutoTest.Net/ -# Web workbench (sass) +# Web Workbench +# SASS, LESS and Coffeescript integration for Visual Studio +# url: http://www.mindscapehq.com/products/web-workbench .sass-cache/ -# Installshield output folder +# InstallShield +# installer framework for Windows machines +# url: http://www.flexerasoftware.com/producer/products/software-installation/installshield-software-installer/ +# +# output folder [Ee]xpress/ -# DocProject is a documentation generator add-in +# DocProject +# a document generation add-in for Visual Studio based on Sandcastle +# url: http://docproject.codeplex.com/ +# remove: if you are using Visual Studio 2010 or later (which are not supported) DocProject/buildhelp/ DocProject/Help/*.HxT DocProject/Help/*.HxC @@ -128,24 +187,42 @@ DocProject/Help/*.hhp DocProject/Help/Html2 DocProject/Help/html -# Click-Once directory +# ClickOnce installer and deployment +# url: https://msdn.microsoft.com/en-us/library/142dbbz4(v=vs.90).aspx +# remove: if you do not have ClickOnce publishing enabled for your projects publish/ # Publish Web Output *.[Pp]ublish.xml *.azurePubxml -# TODO: Comment the next line if you want to checkin your web deploy settings -# but database connection strings (with potential passwords) will be unencrypted +# +# remove: if you have sensitive details in your database connection strings + (such as passwords) committing this settings file will mean + that they are stored in an unencrypted state in your repository *.pubxml *.publishproj -# NuGet Packages +# NuGet +# summary: the package manager tool used in Visual Studio +# url: https://nuget.org +# +# output packages created by NuGet *.nupkg -# The packages folder can be ignored because of Package Restore +# +# Since NuGet 2.7, package restore is now a first class feature of Visual Studio +# so you do not need to check in your packages +# url: https://docs.nuget.org/consume/package-restore +# remove: if you do not wish to restore packages in this way, or have + package restore disabled **/packages/* -# except build/, which is used as an MSBuild target. +# +# some packages include MSBuild targets files, which are stored in this +# location and should be kept in version control !**/packages/build/ -# Uncomment if necessary however generally it will be regenerated when needed +# +# this file is a local listing of where to find your packages.config files, and +# is regenerated by Visual Studio during a build +# include: if you wish to version this file #!**/packages/repositories.config # Windows Azure Build Output @@ -161,24 +238,47 @@ AppPackages/ # but keep track of directories ending in .cache !*.[Cc]ache/ -# Others -ClientBin/ +# StyleCop +# an extension for enforcing coding style in C# +# url: https://stylecop.codeplex.com/ +# +# temporary files created by the tool [Ss]tyle[Cc]op.* + +# Others ~$* *~ *.dbmdl *.dbproj.schemaview +# +# *.pfx *.publishsettings +# +# the local cache of node module installed by NPM +# remove: if you are not using nodejs in your solution + OR if you wish to keep this cache under version control node_modules/ + +# Orleans +# a Distributed Actor Model framework for .NET +# url: https://github.com/dotnet/Orleans +# +# code generated as part of compilation orleans.codegen.cs # RIA/Silverlight projects +# url: https://www.microsoft.com/silverlight/ +# output directory for *.xap artifacts +ClientBin/ +# temporary directory used by compiler Generated_Code/ -# Backup & report files from converting an old project file -# to a newer Visual Studio version. Backup files are not needed, -# because we have git ;-) +# Migrating Projects +# When upgrading a solution to a newer version of Visual Studio, there are a +# number of output files created so you can view the log, troubleshoot issues +# and potentially revert to a backup. These can be safely ignored, because +# you're already using version control. _UpgradeReport_Files/ Backup*/ UpgradeLog*.XML @@ -189,18 +289,18 @@ UpgradeLog*.htm *.ldf # Business Intelligence projects +# remove: if you do not have Business Intelligence projects in your solution *.rdl.data *.bim.layout *.bim_*.settings # Microsoft Fakes +# a local cache of assemblies +# url: https://msdn.microsoft.com/en-us/library/hh549175.aspx +# remove: if you are not using Microsoft Fakes in your projects FakesAssemblies/ # Node.js Tools for Visual Studio +# url: https://github.com/Microsoft/nodejstools +# remove: if you do not have this extension installed .ntvs_analysis.dat - -# Visual Studio 6 build log -*.plg - -# Visual Studio 6 workspace options file -*.opt