working - .gitignore für Visual Studio-Projekte und-Lösungen




visual studio gitignore not working (12)

Es gibt ein Online-Tool, mit dem Sie eine .gitignore-Datei basierend auf Ihrem Betriebssystem, Ihrer IDE, Ihrer Sprache usw. erstellen können. Sehen Sie sich http://www.gitignore.io/ .

Am 20.08.2014 ist hier die Datei, die für Visual Studio + Windows generiert wird.

# Created by http://www.gitignore.io

### VisualStudio ###
## Ignore Visual Studio temporary files, build results, and
## files generated by popular Visual Studio add-ons.

# User-specific files
*.suo
*.user
*.sln.docstates

# Build results
[Dd]ebug/
[Dd]ebugPublic/
[Rr]elease/
[Rr]eleases/
x64/
x86/
build/
bld/
[Bb]in/
[Oo]bj/

# Roslyn cache directories
*.ide/

# MSTest test Results
[Tt]est[Rr]esult*/
[Bb]uild[Ll]og.*

#NUNIT
*.VisualState.xml
TestResult.xml

# Build Results of an ATL Project
[Dd]ebugPS/
[Rr]eleasePS/
dlldata.c

*_i.c
*_p.c
*_i.h
*.ilk
*.meta
*.obj
*.pch
*.pdb
*.pgc
*.pgd
*.rsp
*.sbr
*.tlb
*.tli
*.tlh
*.tmp
*.tmp_proj
*.log
*.vspscc
*.vssscc
.builds
*.pidb
*.svclog
*.scc

# Chutzpah Test files
_Chutzpah*

# Visual C++ cache files
ipch/
*.aps
*.ncb
*.opensdf
*.sdf
*.cachefile

# Visual Studio profiler
*.psess
*.vsp
*.vspx

# TFS 2012 Local Workspace
$tf/

# Guidance Automation Toolkit
*.gpState

# ReSharper is a .NET coding add-in
_ReSharper*/
*.[Rr]e[Ss]harper
*.DotSettings.user

# JustCode is a .NET coding addin-in
.JustCode

# TeamCity is a build add-in
_TeamCity*

# DotCover is a Code Coverage Tool
*.dotCover

# NCrunch
_NCrunch_*
.*crunch*.local.xml

# MightyMoose
*.mm.*
AutoTest.Net/

# Web workbench (sass)
.sass-cache/

# Installshield output folder
[Ee]xpress/

# DocProject is a documentation generator add-in
DocProject/buildhelp/
DocProject/Help/*.HxT
DocProject/Help/*.HxC
DocProject/Help/*.hhc
DocProject/Help/*.hhk
DocProject/Help/*.hhp
DocProject/Help/Html2
DocProject/Help/html

# Click-Once directory
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
*.pubxml
*.publishproj

# NuGet Packages
*.nupkg
# The packages folder can be ignored because of Package Restore
**/packages/*
# except build/, which is used as an MSBuild target.
!**/packages/build/
# If using the old MSBuild-Integrated Package Restore, uncomment this:
#!**/packages/repositories.config

# Windows Azure Build Output
csx/
*.build.csdef

# Windows Store app package directory
AppPackages/

# Others
sql/
*.Cache
ClientBin/
[Ss]tyle[Cc]op.*
~$*
*~
*.dbmdl
*.dbproj.schemaview
*.pfx
*.publishsettings
node_modules/

# RIA/Silverlight projects
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 ;-)
_UpgradeReport_Files/
Backup*/
UpgradeLog*.XML
UpgradeLog*.htm

# SQL Server files
*.mdf
*.ldf

# Business Intelligence projects
*.rdl.data
*.bim.layout
*.bim_*.settings

# Microsoft Fakes
FakesAssemblies/


### Windows ###
# Windows image file caches
Thumbs.db
ehthumbs.db

# Folder config file
Desktop.ini

# Recycle Bin used on file shares
$RECYCLE.BIN/

# Windows Installer files
*.cab
*.msi
*.msm
*.msp

Welche Dateien sollte ich in .gitignore wenn ich Git in Verbindung mit Visual Studio Solutions ( .sln ) und Projects verwende?


Es gibt eine Verknüpfung in Visual Studio, da es Git ab 2015 oder höher unterstützt. Verwenden Sie für neue Lösungen (oder einige, die nicht über den Ordner .git verfügen) die Funktionen der Quellcodeverwaltung im Projektmappen-Explorer :

Klicken Sie mit der rechten Maustaste auf Ihre Lösung und wählen Add Solution to Source Control... im Kontextmenü die Option Add Solution to Source Control... hinzufügen.

Es initialisiert automatisch .gitignore repository, fügt .gitignore notwendige Dinge zu Ihrer Lösung hinzu und sogar .gitattributes Datei (Zeilenendungen, etc.).

Der Text erscheint in der VS-Konsole:

A new Git repository has been created for you in C:\<path to your solution>
Commit ______ created locally in repository.

Erledigt!


Hier ist ein Auszug aus einem .gitignore zu einem aktuellen Projekt, an dem ich gerade arbeitete. Ich habe diejenigen extrahiert, von denen ich glaube, dass sie mit Visual Studio zusammenhängen, einschließlich der Kompilierungsausgaben; Es ist ein plattformübergreifendes Projekt, daher gibt es verschiedene andere Regeln zum Ignorieren von Dateien, die von anderen Build-Systemen erstellt wurden, und ich kann nicht garantieren, dass ich sie genau getrennt habe.

*.dll
*.exe
*.exp
*.ilk
*.lib
*.ncb
*.log
*.pdb
*.vcproj.*.user
[Dd]ebug
[Rr]elease

Vielleicht sollte diese Frage Community Wiki sein, also können wir alle gemeinsam eine Masterliste mit Kommentaren bearbeiten, welche Dateien für welche Projekttypen ignoriert werden sollen?


Hier ist, was ich in meinen .NET-Projekten für meine .gitignore Datei verwende.

[Oo]bj/
[Bb]in/
*.suo
*.user
/TestResults
*.vspscc
*.vssscc

Dies ist ein MS-Ansatz, der den eingebauten Visual Studio-Tester verwendet, und ein Projekt, das auch einige TFS-Bindungen enthält.


Ich weiß, dass dies ein alter Thread ist, aber für die neuen und die alten, die diese Seite besuchen, gibt es eine Website namens gitignore.io, die diese Dateien erzeugen kann. Suche "Visual Studio" bei der Landung auf der Website und es wird diese Dateien für Sie generieren, auch können Sie mehrere Sprachen / ides ignorieren Dateien in das eine Dokument verkettet.

Schön.


Ich ziehe es vor, Dinge bei Bedarf auszuschließen. Sie wollen nicht alles mit der Zeichenfolge "bin" oder "obj" im Namen ausschließen. Stellen Sie zumindest sicher, dass Sie ihnen mit einem Schrägstrich folgen.

Folgendes beginne ich mit einem VS2010-Projekt:

bin/
obj/
*.suo
*.user

Und nur weil ich ReSharper verwende, auch das:

_ReSharper*

In Visual Studio 2015 Update 3 und mit der Git-Erweiterung, die ab heute (2016-10-24) aktualisiert wurde, ist das von Visual Studio generierte .gitignore :

## Ignore Visual Studio temporary files, build results, and
## files generated by popular Visual Studio add-ons.

# User-specific files
*.suo
*.user
*.userosscache
*.sln.docstates

# User-specific files (MonoDevelop/Xamarin Studio)
*.userprefs

# Build results
[Dd]ebug/
[Dd]ebugPublic/
[Rr]elease/
[Rr]eleases/
[Xx]64/
[Xx]86/
[Bb]uild/
bld/
[Bb]in/
[Oo]bj/

# Visual Studio 2015 cache/options directory
.vs/
# Uncomment if you have tasks that create the project's static files in wwwroot
#wwwroot/

# MSTest test Results
[Tt]est[Rr]esult*/
[Bb]uild[Ll]og.*

# NUNIT
*.VisualState.xml
TestResult.xml

# Build Results of an ATL Project
[Dd]ebugPS/
[Rr]eleasePS/
dlldata.c

# DNX
project.lock.json
artifacts/

*_i.c
*_p.c
*_i.h
*.ilk
*.meta
*.obj
*.pch
*.pdb
*.pgc
*.pgd
*.rsp
*.sbr
*.tlb
*.tli
*.tlh
*.tmp
*.tmp_proj
*.log
*.vspscc
*.vssscc
.builds
*.pidb
*.svclog
*.scc

# Chutzpah Test files
_Chutzpah*

# Visual C++ cache files
ipch/
*.aps
*.ncb
*.opendb
*.opensdf
*.sdf
*.cachefile
*.VC.db

# Visual Studio profiler
*.psess
*.vsp
*.vspx
*.sap

# TFS 2012 Local Workspace
$tf/

# Guidance Automation Toolkit
*.gpState

# ReSharper is a .NET coding add-in
_ReSharper*/
*.[Rr]e[Ss]harper
*.DotSettings.user

# JustCode is a .NET coding add-in
.JustCode

# TeamCity is a build add-in
_TeamCity*

# DotCover is a Code Coverage Tool
*.dotCover

# NCrunch
_NCrunch_*
.*crunch*.local.xml
nCrunchTemp_*

# MightyMoose
*.mm.*
AutoTest.Net/

# Web workbench (sass)
.sass-cache/

# Installshield output folder
[Ee]xpress/

# DocProject is a documentation generator add-in
DocProject/buildhelp/
DocProject/Help/*.HxT
DocProject/Help/*.HxC
DocProject/Help/*.hhc
DocProject/Help/*.hhk
DocProject/Help/*.hhp
DocProject/Help/Html2
DocProject/Help/html

# Click-Once directory
publish/

# Publish Web Output
*.[Pp]ublish.xml
*.azurePubxml

# TODO: Un-comment the next line if you do not want to checkin 
# your web deploy settings because they may include unencrypted
# passwords
#*.pubxml
*.publishproj

# NuGet Packages
*.nupkg
# The packages folder can be ignored because of Package Restore
**/packages/*
# except build/, which is used as an MSBuild target.
!**/packages/build/
# Uncomment if necessary however generally it will be regenerated when needed
#!**/packages/repositories.config
# NuGet v3's project.json files produces more ignoreable files
*.nuget.props
*.nuget.targets

# Microsoft Azure Build Output
csx/
*.build.csdef

# Microsoft Azure Emulator
ecf/
rcf/

# Microsoft Azure ApplicationInsights config file
ApplicationInsights.config

# Windows Store app package directory
AppPackages/
BundleArtifacts/

# Visual Studio cache files
# files ending in .cache can be ignored
*.[Cc]ache
# but keep track of directories ending in .cache
!*.[Cc]ache/

# Others
ClientBin/
[Ss]tyle[Cc]op.*
~$*
*~
*.dbmdl
*.dbproj.schemaview
*.pfx
*.publishsettings
node_modules/
orleans.codegen.cs

# RIA/Silverlight projects
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 ;-)
_UpgradeReport_Files/
Backup*/
UpgradeLog*.XML
UpgradeLog*.htm

# SQL Server files
*.mdf
*.ldf

# Business Intelligence projects
*.rdl.data
*.bim.layout
*.bim_*.settings

# Microsoft Fakes
FakesAssemblies/

# GhostDoc plugin setting file
*.GhostDoc.xml

# Node.js Tools for Visual Studio
.ntvs_analysis.dat

# Visual Studio 6 build log
*.plg

# Visual Studio 6 workspace options file
*.opt

# Visual Studio LightSwitch build output
**/*.HTMLClient/GeneratedArtifacts
**/*.DesktopClient/GeneratedArtifacts
**/*.DesktopClient/ModelManifest.xml
**/*.Server/GeneratedArtifacts
**/*.Server/ModelManifest.xml
_Pvt_Extensions

# LightSwitch generated files
GeneratedArtifacts/
ModelManifest.xml

# Paket dependency manager
.paket/paket.exe

# FAKE - F# Make
.fake/

InstallShield-Ignorierungen für die Buildbereitstellung hinzugefügt. InstallShield ist die neue Richtung, die Microsoft über Visual Studio Installer führt. Daher haben wir begonnen, es für alle neuen Projekte zu verwenden. Diese hinzugefügte Zeile entfernt die SingleImage-Installationsdateien. Andere InstallShield-Typen können unter anderem DVD-Verteilung enthalten. Sie können diese Verzeichnisnamen oder nur [Ee] xpress / hinzufügen, um zu verhindern, dass InstallShield LE-Implementierungsdateien in den Repo gelangen.

Hier ist unser .gitignore für VS2010 C # -Projekte, die Install Shield LE mit SingleImage-Bereitstellungen für das Installationsprogramm verwenden:

#OS junk files
[Tt]humbs.db
*.DS_Store

#Visual Studio files
*.[Oo]bj
*.exe
*.pdb
*.user
*.aps
*.pch
*.vspscc
*.vssscc
*_i.c
*_p.c
*.ncb
*.suo
*.tlb
*.tlh
*.bak
*.[Cc]ache
*.ilk
*.log
*.lib
*.sbr
*.sdf
ipch/
obj/
[Bb]in
[Dd]ebug*/
[Rr]elease*/
Ankh.NoLoad

#InstallShield
[Ss]ingle[Ii]mage/
[Dd][Vv][Dd]-5/
[Ii]nterm/

#Tooling
_ReSharper*/
*.resharper
[Tt]est[Rr]esult*

#Project files
[Bb]uild/

#Subversion files
.svn

# Office Temp Files
~$*


Spät zur Party hier, aber ich finde auch, dass ich folgendes benutze. Einige sind möglicherweise nur nützlich, um vertrauliche Dateien zu verbergen, wenn Sie auf eine öffentliche Fernbedienung drücken.

#Ignore email files delivered to specified pickup directory
*.eml

#Allow NuGet.exe (do not ignore)
!NuGet.exe

#Ignore WebDeploy publish profiles
*.Publish.xml

#Ignore Azure build csdef & Pubxml files
ServiceDefinition.build.csdef
*.azurePubxml

#Allow ReSharper .DotSettings (for non-namespace-provider properties)
!*.csproj.DotSettings

#Ignore private folder
/Private/


Wie von einem anderen Poster erwähnt, generiert Visual Studio dies als Teil seines .gitignore (zumindest für MVC 4):

# SQL Server files
App_Data/*.mdf
App_Data/*.ldf

Da Ihr Projekt möglicherweise ein Unterordner Ihrer Lösung ist und die .gitignore-Datei im Stammverzeichnis der Lösung gespeichert wird, werden die lokalen Datenbankdateien nicht berührt (Git wird im projectfolder/App_Data/*.mdf ). Um dies zu erklären, habe ich diese Zeilen wie folgt geändert:

# SQL Server files
*App_Data/*.mdf
*App_Data/*.ldf




gitignore