$/
artifacts/
build/
docs/
lib/
packages/
samples/
src/
tests/
.editorconfig
.gitignore
.gitattributes
build.cmd
build.sh
LICENSE
NuGet.Config
README.md
{solution}.sln
src
- Main projects (the product code)tests
- Test projectsdocs
- Documentation stuff, markdown files, help files etc.samples
(optional) - Sample projectslib
- Things that can NEVER exist in a nuget packageartifacts
- Build outputs go here. Doing a build.cmd/build.sh generates artifacts here (nupkgs, dlls, pdbs, etc.)packages
- NuGet packagesbuild
- Build customizations (custom msbuild files/psake/fake/albacore/etc) scriptsbuild.cmd
- Bootstrap the build for windowsbuild.sh
- Bootstrap the build for *nixglobal.json
- ASP.NET vNext only
[Oo]bj/
[Bb]in/
.nuget/
_ReSharper.*
packages/
artifacts/
*.user
*.suo
*.userprefs
*DS_Store
*.sln.ide
There's probably more things that go in the ignore file.
- Update: Added docs folder
- Added README.md and LICENSE - Critical if you're OSS, if not ignore it
- Renamed
test
totests
- Added lib for things that CANNOT exist in nuget packages
- Removed NuGet.config for people using packet :)
- Added global.json for ASP.NET vnext
- Added .editorconfig file in the root (x-plat IDE settings)
- Added NuGet.config back because people were confused about it missing
I have a further thought too. I realise I'm in the absolute minority here, but I find it odd that we shorten
source
tosrc
andlibraries
tolib
yet there's no good reason to do this and we don't do this for any other folder. This really feels more historical than logical to me personally and doesn't make my OCD happy 😄As such, I'm personally using
source
as my source folder ... does that make me a bit of an outcast? 😨I personally put my
azure-pipelines.yaml
in the root folder but agree that it probably would be better in thebuild
directory.