github/gitignore · Dotnet.gitignore

Modèle .gitignore .NET expliqué

Explique pourquoi Dotnet.gitignore ignore bin·obj, Debug·Release, les paquets NuGet, les logs binaires MSBuild, les résultats de tests et .env, et en quoi il diffère du modèle VisualStudio.

Ouvrir dans le générateur Ouvrir avec VisualStudio, VisualStudioCode, JetBrains, Windows

Dotnet.gitignore est un modèle concis pour les projets .NET de style SDK (projets C#·F# créés avec dotnet new). Comme l'indique son commentaire d'en-tête, si vous utilisez Visual Studio, mieux vaut l'associer au modèle VisualStudio, qui contient beaucoup plus de règles liées à l'IDE.

Si vous développez avec VS Code, Rider ou en ligne de commande, ce modèle suffit à bloquer la plupart des résultats de build et des sous-produits d'outils.

Explication règle par règle

MotifCe qui est ignoré et pourquoi
[Bb]in/[Oo]bj/[Dd]ebug/[Rr]elease/x64/x86/bld/Sortie de buildAssemblies et fichiers intermédiaires (obj/project.assets.json, etc.) créés par dotnet build. Les crochets capturent toutes les variantes de casse comme Bin et bin.
artifacts/project.lock.jsonproject.fragment.lock.jsonArtefacts .NETartifacts/ est le dossier de la disposition de sortie unifiée disponible depuis .NET 8, et project.lock.json est le résultat de restauration de l'ancienne époque project.json.
*.nupkg*.snupkgPaquets NuGetPaquets et paquets de symboles créés avec dotnet pack. Ce sont les artefacts publiés sur un flux NuGet.
*.binlog[Tt]est[Rr]esult*/[Bb]uild[Ll]og.*TestResult.xmlnunit-*.xmlCodeCoverage/Logs et résultats de testsLogs binaires MSBuild (option -bl) et résultats de tests et de couverture. Les logs binaires peuvent contenir des valeurs sensibles comme des variables d'environnement : prudence avant de les partager.
.env~$**~Environnement et fichiers temporairesFichiers de variables d'environnement, fichiers de verrouillage créés à l'ouverture de documents Office (~$document.docx) et fichiers de sauvegarde d'éditeurs.

Points d'attention en pratique

Modèle d'origine

Dotnet.gitignore30 règles
## A streamlined .gitignore for modern .NET projects## including temporary files, build results, and## files generated by popular .NET tools. If you are## developing with Visual Studio, the VS .gitignore## https://github.com/github/gitignore/blob/main/VisualStudio.gitignore## has more thorough IDE-specific entries.#### Get latest from https://github.com/github/gitignore/blob/main/Dotnet.gitignore# Build results[Dd]ebug/[Dd]ebugPublic/[Rr]elease/[Rr]eleases/x64/x86/[Ww][Ii][Nn]32/[Aa][Rr][Mm]/[Aa][Rr][Mm]64/bld/[Bb]in/[Oo]bj/[Ll]og/[Ll]ogs/# .NET Coreproject.lock.jsonproject.fragment.lock.jsonartifacts/# ASP.NET ScaffoldingScaffoldingReadMe.txt# NuGet Packages*.nupkg# NuGet Symbol Packages*.snupkg# dotenv environment variables file.env# Others~$**~CodeCoverage/# MSBuild Binary and Structured Log*.binlog# MSTest test Results[Tt]est[Rr]esult*/[Bb]uild[Ll]og.*# NUnit*.VisualState.xmlTestResult.xmlnunit-*.xml

Source des modèles : github/gitignore/Dotnet.gitignore @356fd7b (2026-09-11) · CC0-1.0

Modèles utilisés ensemble

Autres modèles expliqués