विजुअल स्टूडियो प्रोजेक्ट्स और सॉल्यूशंस के लिए .ignignore


1144

विजुअल स्टूडियो सॉल्यूशंस ( ) और प्रोजेक्ट्स के संयोजन में Git.gitignore का उपयोग करते समय मुझे कौन सी फाइलें शामिल करनी चाहिए ?.sln



1
मैंने इसे एक सामुदायिक विकि में बनाया है, और पोस्ट में सभी मौजूदा उत्तरों को समेकित किया है। कृपया जैसा कि आप फिट देखते हैं योगदान करें!
मार्टिन सुचैनक

12
मैं अनदेखा कर रहा हूँ। Exe और .pdb की, आप अनजाने में टूलींग को अनदेखा कर सकते हैं जिसे आप अपने स्रोत (नेंट, नुनिट गुई, आदि ...) के साथ स्टोर करते हैं।
जेम्स ग्रेगरी

2
@ मुर्की - ऐसा लगता है कि इसका उत्तर है: coderjournal.com/2011/12/…
Ronnie Overby

7
.slnजाँच की गई फ़ाइलों के साथ , हमें शोर भिन्नताएं मिलती हैं जैसे कि -# Visual Studio 14 -VisualStudioVersion = 14.0.24720.0 +# Visual Studio 2013 +VisualStudioVersion = 12.0.31101.0 क्या इससे बचा जा सकता है?
जीन जॉर्डन

जवाबों:


592

आधिकारिक GitHub के "उपयोगी .gitignore टेम्पलेट्स का संग्रह " देखें

.gitignoreदृश्य स्टूडियो के लिए यहां पाया जा सकता:
https://github.com/github/gitignore/blob/master/VisualStudio.gitignore


8
कृपया ध्यान दें। इस फ़ाइल में प्रकाशित फ़ाइलों को अनदेखा करने के लिए एक प्रविष्टि है। हालाँकि, जिस तरह से नियम लिखा गया है, यह आपके द्वारा प्रकाशित "प्रकाशित" कहे जाने वाले किसी भी फ़ोल्डर को अनदेखा कर देगा, और आपके द्वारा इसके नीचे किसी भी चीज़ को अनदेखा कर दिया जाएगा। यह विशेष रूप से विज़ुअल स्टूडियो "प्रकाशन" आउटपुट को लक्षित नहीं करता है। यह इसे नजरअंदाज करेगा, लेकिन अन्य चीजों को भी।
रेक्स व्हीट

6
@starfighterxyz अगर आपको लगता है कि gitignore में एक बग है, तो मैं एक पुल अनुरोध बनाने की सलाह दूंगा।
क्रोनिकल

9
ठीक है, मुझे नहीं पता (पर्याप्त?) इसकी बग कहने के लिए। मैं सिर्फ प्रकाशक / नियंत्रक नाम के रूप में और प्रोजेक्ट फ़ोल्डर नामों के रूप में उपयोग करने में प्रसन्न हूं। मुझे लगता है कि यह सिर्फ एक किनारे का मामला है। बस अपने जीवन के कुछ घंटों को बचाने के लिए कुछ :)
रेक्स व्हाईट

2
@ लर्नर क्योंकि ये अलग-अलग फाइलों में हैं। आपको उन्हें अपनी व्यक्तिगत वैश्विक gitignore में जोड़ना चाहिए, बजाय उन्हें चेक करने के। github.com/github/gitignore/tree/master/Global
Chronial

1
@ErikAronesty आप गितुब रेपो पर एक मुद्दा या एक पीआर बना सकते हैं। लेकिन *.userपहले से ही नजरअंदाज किया जाता है, जिसमें शामिल हैं .vcxproj.user
क्रोनिकल

254

एक ऑनलाइन टूल है जो आपको अपने ओएस, आईडीई, भाषा, आदि के आधार पर .gitignore फ़ाइल उत्पन्न करने की अनुमति देता है । http://www.gitignore.io/ पर एक नज़र डालें ।

यहां छवि विवरण दर्ज करें

8/20/2014 को, यहां वह फाइल है जो विजुअल स्टूडियो + विंडोज के लिए जेनरेट की गई है।

# 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

आदर्श रूप में, इसमें फ़ाइल के अंदर एक लाइसेंस शामिल होगा। (आदर्श रूप से, यह एक लाइसेंस होगा जो कॉर्पोरेट वातावरण में कोई सवाल नहीं उठाता है।)
एवगेनी

इसके अलावा, यह होना चाहिए .vs/, यहाँ देखें: stackoverflow.com/a/31879242/1143274
इवगेनी

110

मैं C # प्रोजेक्ट्स के लिए निम्न .gitignore का उपयोग करता हूं। अतिरिक्त पैटर्न को तब जोड़ा जाता है जब उनकी आवश्यकता होती है।

[Oo]bj
[Bb]in
*.user
*.suo
*.[Cc]ache
*.bak
*.ncb
*.log 
*.DS_Store
[Tt]humbs.db 
_ReSharper.*
*.resharper
Ankh.NoLoad

2
से असहमत हैं *.resharper। मेल खाने वाली फाइलों *.ReSharper.userको नजरअंदाज किया जाना चाहिए, लेकिन *.userइसके लिए ऊपर दिए गए नियम का पालन ​​किया जाता है।
ड्रू नॉक्स

1
@DrewNoakes: आपके द्वारा विश्वास किया जाना चाहिए कि ReSharper फाइलें क्या हैं?
प्रति लंडबर्ग

4
@PerLundberg एक कारण पर विचार करने लायक है कि आप मानक परियोजना प्रारूपण विकल्पों को कॉन्फ़िगर कर सकते हैं, आदि, और परियोजना के साथ विन्यास फाइल को बचा सकते हैं। यदि यह स्थिति में है, तो प्रोजेक्ट को लगातार स्वरूपित रखने के लिए रेस्परर का उपयोग करना सभी के लिए आसान हो जाता है।
मार्क

@DrewNoakes - के लिए कोई सुझाव इस कृपया?
xameeramir

44

Microsoft क्या सोचते हैं, इसे gitignore में शामिल किया जाना चाहिए, उन लोगों के लिए, यहाँ एक डिफ़ॉल्ट है जो Visual Studio 2013 RTMएक नया Git-Repository बनाते समय स्वतः उत्पन्न होता है:

## 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/
[Rr]elease/
x64/
build/
[Bb]in/
[Oo]bj/

# Enable "build/" folder in the NuGet Packages folder since NuGet packages use it for MSBuild targets
!packages/*/build/

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

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

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

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

# Guidance Automation Toolkit
*.gpState

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

# TeamCity is a build add-in
_TeamCity*

# DotCover is a Code Coverage Tool
*.dotCover

# NCrunch
*.ncrunch*
.*crunch*.local.xml

# 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
*.Publish.xml

# NuGet Packages Directory
## TODO: If you have NuGet Package Restore enabled, uncomment the next line
#packages/

# Windows Azure Build Output
csx
*.build.csdef

# Windows Store app package directory
AppPackages/

# Others
sql/
*.Cache
ClientBin/
[Ss]tyle[Cc]op.*
~$*
*~
*.dbmdl
*.[Pp]ublish.xml
*.pfx
*.publishsettings

# 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
App_Data/*.mdf
App_Data/*.ldf


#LightSwitch generated files
GeneratedArtifacts/
_Pvt_Extensions/
ModelManifest.xml

# =========================
# Windows detritus
# =========================

# Windows image file caches
Thumbs.db
ehthumbs.db

# Folder config file
Desktop.ini

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

# Mac desktop service store files
.DS_Store

देखें: MSDN पर एक डिफ़ॉल्ट .gitignore फ़ाइल जोड़ें


37

जबकि आपको अपने NuGet package.config फ़ाइल को रखना चाहिए, आपको संकुल फ़ोल्डर को बाहर करना चाहिए:

#NuGet
packages/

मैं आमतौर पर बायनेरिज़, या मेरे स्रोत से उत्पन्न कुछ भी स्टोर नहीं करता, स्रोत नियंत्रण में। हालाँकि इस पर अलग-अलग राय है। यदि यह आपके निर्माण प्रणाली के लिए चीजों को आसान बनाता है, तो इसे करें! हालांकि, मेरा तर्क है कि आप इन निर्भरताओं का संस्करण नहीं दे रहे हैं, इसलिए वे सिर्फ आपके भंडार में जगह लेंगे। एक केंद्रीय स्थान में बायनेरिज़ को संग्रहीत करना, फिर पैकेजों पर निर्भर करना। यह इंगित करने के लिए कि कौन से संस्करण की आवश्यकता है फ़ाइल का उपयोग करना बेहतर उपाय है, मेरी राय में।


4
किसी को भी इस बात का ध्यान रखना है कि आप संकुल फ़ोल्डर को क्यों छोड़ना चाहते हैं? क्या यह समझ में आने के लिए बिल्ड सर्वर के लिए पैकेज को शामिल करने का कोई मतलब नहीं है?
जोएल मार्टिनेज

14
यह ध्यान देने योग्य है कि नुगेट टीम ने इस समस्या के लिए 'पैकेज रिस्टोर' सुविधा लागू की। NuGet साइट पर एक दस्तावेज़ है जो फ़ीचर की व्याख्या करता है और यह बताता है कि विज़ुअल स्टूडियो में इसका उपयोग कैसे किया जाए।
19

4
यदि आप संकुल को अनदेखा करते हैं और नौगेट संकुल पुनर्स्थापना का उपयोग कर रहे हैं, तो यह nuget.exe की अनुमति देने में सहायक है। जब कोई डाउनलोड करता है, तो यह बताता है कि वीएस बताता है कि सुविधा समाधान के लिए सक्षम हो गई है: !NuGet.exe<- इस फ़ाइल को अनदेखा न करें।
danludwig

आप AppHarbor का उपयोग कर उन लोगों के लिए, यह ध्यान देने योग्य है कि संकुल फ़ोल्डर को छोड़कर आपके निर्माण को विफल करने का कारण बनेगा :)
जोएल मार्टिनेज

18

मैं जरूरत के आधार पर चीजों को बाहर करना पसंद करता हूं। आप नाम में स्ट्रिंग "बिन" या "ओब्ज" के साथ सब कुछ बाहर करना नहीं चाहते हैं। कम से कम एक स्लैश वाले लोगों का पालन करना सुनिश्चित करें।

यहाँ मैं एक VS2010 परियोजना के साथ शुरू होता है:

bin/
obj/
*.suo
*.user

और केवल इसलिए कि मैं ReSharper का उपयोग करता हूं, यह भी:

_ReSharper*

इस बात से सहमत। इसके अलावा, यह "डीबग" के लिए जाता है। नाम में डीबग के साथ फ़ाइलों को अनदेखा करने से बचने के लिए इसमें पीछे की ओर स्लैश जोड़ें।
जॉन कॉर्न्स

16

मैं समझता हूं कि यह एक पुराना सवाल है, फिर भी एक जानकारी साझा करना। Visual Studio 2017 में, आप केवल समाधान फ़ाइल पर राइट क्लिक कर सकते हैं और स्रोत नियंत्रण में Add समाधान का चयन कर सकते हैं

यहां छवि विवरण दर्ज करें

यह आपके स्रोत फ़ोल्डर में दो फाइलें जोड़ देगा।

  1. .gitattributes
  2. .gitignore

यह सबसे आसान तरीका है।


11

विजुअल स्टूडियो 2015 अद्यतन 3, और साथ Git विस्तार आज (2016/10/24) के रूप में अद्यतन, .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/

3
मुझे यह हिस्सा बहुत पसंद था:Backup & report files from converting an old project file to a newer Visual Studio version. Backup files are not needed, because we have git ;-)
जीनकार्लो फोंटाल्वो

10

Visual Studio 2015 टीम एक्सप्लोरर में> स्थानीय Git Repositories> Project> Settings> Git> Repository Settings> Ignore & Attribute Files.You जोड़ सकते हैं। आइटम के साथ .ignignore फ़ाइल को डिफ़ॉल्ट रूप से विज़ुअल स्टूडियो समाधान में अनदेखा किया जाना चाहिए। यहां छवि विवरण दर्ज करें

यहां छवि विवरण दर्ज करें


9

बिल्ड परिनियोजन के लिए InstallShield उपेक्षा को जोड़ा गया। InstallShield नई दिशा है Microsoft Microsoft Visual Studio इंस्टालर पर आधारित है, इसलिए हमने सभी नई परियोजनाओं पर इसका उपयोग शुरू कर दिया है। यह जोड़ा लाइन SingleImage स्थापना फ़ाइलों को निकालता है। अन्य InstallShield प्रकारों में दूसरों के बीच डीवीडी वितरण शामिल हो सकता है। आप किसी भी InstallShield LE परिनियोजन फ़ाइलों को रेपो में लाने से रोकने के लिए उन निर्देशिका नामों या बस [Ee] xpress / को जोड़ना चाह सकते हैं।

यहाँ हमारे .gitignore VS2010 C # परियोजनाओं के लिए इंस्टॉलर के लिए SingleImage परिनियोजन के साथ स्थापित शील्ड ले का उपयोग कर रहे हैं:

#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
~$*

1
मैं जेम्स ग्रेगरी की टिप्पणी को यहां उद्धृत करता हूं: "मैं अनदेखी करने से सावधान रहूंगा।। Exe और .pdb's, आप अनजाने में उस टूलिंग को नजरअंदाज कर सकते हैं, जिसे आप अपने स्रोत (नेंट, नुनिट गुई, आदि ...) के साथ संग्रहीत करते हैं। - जेम्स ग्रेगोरी 21 मई 21 '10 बजे 13:32 "
जिम राडेन

1
से असहमत हैं *.resharper। मेल खाने वाली फाइलों *.ReSharper.userको नजरअंदाज किया जाना चाहिए, लेकिन *.userइसके लिए ऊपर दिए गए नियम का पालन ​​किया जाता है।
ड्रू नॉक्स

बस एक स्पष्टीकरण - यह वास्तव में बैक टू इंस्टॉलशिल्ड चल रहा है, जो कि विज़ुअलस्टडियो इंस्टॉलर से पहले मौजूद था, कम से कम 1998 के बाद!
मैथिसन

7

मुझे पता है कि यह एक पुराना धागा है लेकिन इस पेज पर आने वाले नए और पुराने लोगों के लिए, gitignore.io नामक एक वेबसाइट है जो इन फ़ाइलों को उत्पन्न कर सकती है। वेबसाइट पर उतरने पर "विज़ुअलस्टडी" खोजें और यह आपके लिए ये फाइलें उत्पन्न करेगा, साथ ही आपके पास एक दस्तावेज़ में कई भाषाओं / आईडीज़ को अनदेखा करने वाली फ़ाइलें हो सकती हैं।

सुंदर।


6

.gitignoreहाल ही में जिस प्रोजेक्ट पर मैं काम कर रहा था , उसमें से एक अर्क है । मैंने उन लोगों को निकाला है जो मुझे विश्वास है कि विज़ुअल स्टूडियो से संबंधित हैं, जिसमें संकलन आउटपुट भी शामिल है; यह एक क्रॉस प्लेटफ़ॉर्म प्रोजेक्ट है, इसलिए अन्य बिल्ड सिस्टम द्वारा निर्मित फ़ाइलों के लिए कई अन्य अनदेखी नियम हैं, और मैं गारंटी नहीं दे सकता कि मैंने उन्हें बिल्कुल अलग कर दिया है।

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

शायद यह सवाल सामुदायिक विकी होना चाहिए, इसलिए हम सभी एक मास्टर सूची को एक साथ टिप्पणी के साथ संपादित कर सकते हैं कि किस प्रकार की परियोजना के लिए फाइलों को अनदेखा किया जाना चाहिए?


एक अन्य उत्तर पर जेम्स ग्रेगोरी की टिप्पणी देखें: "मैं अनदेखा कर रहा हूँ। exe और .pdb की, आप अनजाने में उस टूलिंग को अनदेखा कर सकते हैं जिसे आप अपने स्रोत (नेंट, नुनिट गुई, आदि ...) के साथ स्टोर करते हैं। 13:32 पर
जिम राडेन

2
@JimRaden सामान्य तौर पर, Git में बाइनरी टूल में जाँच से बचना सबसे अच्छा है। सर्वोत्तम प्रथाएँ केवल आपके स्रोत में Git की जाँच करने के लिए हैं; यदि आपको बाइनरी टूल की आवश्यकता है, तो उन्हें स्थापित करने के लिए एक स्क्रिप्ट शामिल करें या बस उन टूल के साथ एक सबमॉड्यूल करें।
ब्रायन कैंपबेल

6

इसका श्रेय जेन्स लेहमन को दिया जाता है - यदि आप स्रोत निर्देशिकाओं को अपनी संकलक परियोजना फाइलों के लिए अलग रखते हैं और आउटपुट का निर्माण करते हैं, तो आप इसे नकार कर अपने .gitignore को सरल बना सकते हैं:

path/to/build/directory/*
!*.sln
!*.vcproj

आप यह नहीं कहते कि आप किस भाषा का उपयोग कर रहे हैं, लेकिन ऊपर C ++ प्रोजेक्ट्स के लिए काम करना चाहिए।


मुझे पता नहीं था कि .ignignore में एक निषेध ध्वज था। सहायक टिप!
जिम राडेन

6

यहां पार्टी के लिए देर हो रही है, लेकिन मुझे यह भी पता चलता है कि मैं निम्नलिखित का उपयोग करता हूं। कुछ केवल सार्वजनिक रिमोट पर पुश करने पर संवेदनशील फ़ाइलों को छिपाने के लिए उपयोगी हो सकते हैं ।

#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/

नवीनतम संस्करण
tofutim

@tofutim, का नवीनतम संस्करण क्या है? अपने आप को?
danludwig


4

विजुअल स्टूडियो में एक शॉर्टकट है, क्योंकि यह 2015 में या उससे ऊपर के बॉक्स से Git का समर्थन करता है। नए समाधान के लिए (या कुछ जिसमें .gitफ़ोल्डर नहीं है ) समाधान एक्सप्लोरर में स्रोत नियंत्रण सुविधाओं का उपयोग करें :

अपने समाधान पर राइट-क्लिक करें और Add Solution to Source Control...पॉपअप मेनू में आइटम का चयन करें ।

यह स्वचालित रूप से .gitरिपॉजिटरी को आरंभीकृत करता है, .gitignore आपके समाधान और यहां तक ​​कि .gitattributesफ़ाइल (लाइन एंडिंग, आदि) के लिए आवश्यक चीजों के साथ जोड़ता है ।

पाठ वीएस कंसोल में दिखाई देगा:

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

किया हुआ!


3

यहाँ मैं अपनी .gitignoreफ़ाइल के लिए अपने .NET प्रोजेक्ट्स में उपयोग करता हूँ ।

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

यह एक बहुत सारे एमएस दृष्टिकोण है, जो बिल्ट इन विजुअल स्टूडियो परीक्षक का उपयोग करता है, और एक परियोजना जिसमें कुछ टीएफएस बाइंडिंग भी हो सकती है।


3

जैसा कि एक अन्य पोस्टर द्वारा बताया गया है, विजुअल स्टूडियो इसे अपने .itignore (MVC 4 के लिए कम से कम) के एक भाग के रूप में उत्पन्न करता है:

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

चूँकि आपकी परियोजना आपके समाधान का सबफ़ोल्डर हो सकती है, और .ignignore फ़ाइल को समाधान रूट में संग्रहीत किया जाता है, यह वास्तव में स्थानीय डेटाबेस फ़ाइलों को नहीं छूएगा (Git उन्हें देखता है projectfolder/App_Data/*.mdf)। इसका हिसाब रखने के लिए, मैंने उन पंक्तियों को इस तरह बदल दिया:

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

1
वास्तव में, git उपनिर्देशिकाओं के सापेक्ष पैटर्न से मेल खाता है, वह भी, जब तक कि आप उन्हें " /" के साथ शुरू नहीं करते हैं , उस स्थिति में वे केवल .gitignoreफ़ाइल के समान निर्देशिका में चीजों से मेल खाते हैं ।
सैमबी

0

कुछ प्रोजेक्ट *.manifestउनके दृश्य स्टूडियो gitignore.ioफ़ाइल में जोड़ना चाह सकते हैं ।

ऐसा इसलिए है क्योंकि नई परियोजनाओं के कुछ दृश्य स्टूडियो प्रोजेक्ट गुण प्रकट फ़ाइल बनाने के लिए सेट किए गए हैं।

देखें " मैनिफेस्ट जेनरेशन इन विजुअल स्टूडियो "

लेकिन अगर आपने उन्हें उत्पन्न किया है और वे स्थिर हैं (समय के साथ नहीं बदल रहे हैं), तो उन्हें .gitignoreफ़ाइल से निकालना एक अच्छा विचार है ।

यह है कि विंडोज के लिए Git जैसा एक प्रोजेक्ट क्या किया (Git 2.24, Q4 2019 के लिए)

देखें aac6ff7 प्रतिबद्ध द्वारा (05 सितं, 2019) जोहानिस Schindelin ( dscho)
(द्वारा विलय Junio सी Hamano - gitster- में प्रतिबद्ध 59438be , 30 सितं, 2019)

.gitignore: .manifestफाइलों को नजरअंदाज करना बंद करें

विंडोज़ पर, अतिरिक्त मेटाडेटा को "मेनिफ़ेस्ट", यानी XML दस्तावेज़ में जोड़कर निष्पादन योग्य में एम्बेड करना संभव है, जो क्षमताओं और आवश्यकताओं (जैसे कि न्यूनतम या अधिकतम विंडोज़ संस्करण) का वर्णन करता है।
इन XML दस्तावेज़ों को .manifestफ़ाइलों में संग्रहीत किए जाने की उम्मीद है ।

जब कोई भी स्पष्ट रूप से निर्दिष्ट नहीं किया जाता है, तो कम से कम कुछ विज़ुअल स्टूडियो संस्करण स्वतः उत्पन्न होने वाली .manifestफ़ाइलों को कहते हैं, इसलिए हम Git से उन्हें अनदेखा करने के लिए कहते थे।

हालाँकि, हमारे पास अब एक सुंदर .manifestफ़ाइल है: compat/win32/git.manifestइसलिए न तो हमारे लिए विज़ुअल स्टूडियो स्वतः प्रकट होता है, और न ही हम चाहते हैं कि Git .manifestअब फ़ाइलों को अनदेखा करे ।


0

आप टीम एक्सप्लोरर में सेटिंग्स दृश्य पर जाकर, फिर रिपोजिटरी सेटिंग्स का चयन करके अपने रेपो के लिए अपनी .gitignore फ़ाइल बना या संपादित कर सकते हैं। अपने .gitignore के लिए संपादन का चयन करें।

यह स्वचालित रूप से फिल्टर बनाता है जो सभी वीएस विशिष्ट बिल्ड निर्देशिकाओं आदि की उपेक्षा करेगा।

यहां छवि विवरण दर्ज करें

अधिक जानकारी यहाँ एक नज़र है

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.