## Build results [Bb]in/ [Oo]bj/ [Oo]ut/ [Ll]og/ [Ll]ogs/ # artifacts/* rather than artifacts/ — git does not descend into an excluded directory, # so a negation under a directory-level ignore never matches. The committed OpenAPI # document and schema snapshots live here and are CI-diffed. artifacts/* !artifacts/openapi/ !artifacts/schema/ ## .NET / MSBuild *.user *.suo *.userosscache *.sln.docstates project.lock.json project.fragment.lock.json *.binlog *.nuget.props *.nuget.targets msbuild.log msbuild.err msbuild.wrn ## NuGet *.nupkg *.snupkg .nuget/ **/packages/* !**/packages/build/ # packages.lock.json IS committed — restore --locked-mode depends on it ## Test / coverage [Tt]est[Rr]esult*/ coverage*.json coverage*.xml coverage*.info *.coverage *.coveragexml TestResults/ BenchmarkDotNet.Artifacts/ ## IDEs .vs/ .vscode/* !.vscode/extensions.json !.vscode/launch.json !.vscode/tasks.json .idea/**/workspace.xml .idea/**/tasks.xml .idea/**/usage.statistics.xml .idea/**/dictionaries/ .idea/**/shelf/ .idea/**/contentModel.xml .idea/**/dataSources/ .idea/**/dataSources.ids .idea/**/dataSources.local.xml .idea/**/sqlDataSources.xml .idea/**/httpRequests/ *.DotSettings.user ## OS .DS_Store Thumbs.db desktop.ini ## Node (xterm.js bundle in DodoSSH.Client.WebAssets) node_modules/ npm-debug.log* yarn-error.log* .pnpm-store/ ## Client build / packaging output publish/ Releases/ *.AppImage *.dmg *.deb *.rpm *.msix *.appinstaller ## Secrets and local config — never commit these *.pfx *.p12 *.snk appsettings.Local.json appsettings.*.Local.json .env .env.* !deploy/.env.example secrets/