.gitignore for Visual Studio 프로젝트 및 솔루션
.gitignore
Visual Studio 솔루션 ( .sln
) 및 프로젝트 와 함께 Git을 사용할 때 어떤 파일을 포함해야 합니까?
공식 GitHub의 "유용한 .gitignore 템플릿 모음"을 참조하십시오 .
.gitignore
비주얼 스튜디오는 여기에서 찾을 수 있습니다 :
https://github.com/github/gitignore/blob/master/VisualStudio.gitignore
OS, IDE, 언어 등에 따라 .gitignore 파일을 생성 할 수있는 온라인 도구가 있습니다 . http://www.gitignore.io/를 살펴보세요 .
2014 년 8 월 20 일에 Visual Studio + Windows 용으로 생성 된 파일은 다음과 같습니다.
# 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
C # 프로젝트에 다음 .gitignore를 사용합니다. 추가 패턴은 필요할 때 추가됩니다.
[Oo]bj
[Bb]in
*.user
*.suo
*.[Cc]ache
*.bak
*.ncb
*.log
*.DS_Store
[Tt]humbs.db
_ReSharper.*
*.resharper
Ankh.NoLoad
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 파일 추가
NuGet packages.config 파일을 유지해야하지만 패키지 폴더는 제외해야합니다.
#NuGet
packages/
나는 일반적으로 바이너리 또는 내 소스에서 생성 된 모든 것을 소스 제어에 저장하지 않습니다. 그러나 이것에 대해 다른 의견이 있습니다. 빌드 시스템을 더 쉽게 만들 수 있다면 그렇게하십시오! 그러나 나는 이러한 종속성을 버전 화하지 않으므로 저장소에서 공간을 차지할 것이라고 주장합니다. 바이너리를 중앙 위치에 저장 한 다음 packages.config 파일에 의존하여 필요한 버전을 나타내는 것이 더 나은 솔루션이라고 생각합니다.
나는 필요에 따라 항목을 제외하는 것을 선호합니다. 이름에 "bin"또는 "obj"문자열이 포함 된 모든 항목을 Shotgun에서 제외하지 않으려 고합니다. 최소한 슬래시가있는 항목을 따라야합니다.
다음은 VS2010 프로젝트에서 시작하는 것입니다.
bin/
obj/
*.suo
*.user
ReSharper를 사용하기 때문에 다음과 같은 이점도 있습니다.
_ReSharper*
Visual Studio 2015 업데이트 3에서 Git 확장이 오늘 (2016-10-24) 업데이트 된 경우 Visual Studio에서 생성 된 .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 무시가 추가되었습니다. InstallShield는 Microsoft가 Visual Studio Installer로 향하는 새로운 방향이므로 모든 새 프로젝트에서 사용하기 시작했습니다. 이 추가 된 행은 SingleImage 설치 파일을 제거합니다. 다른 InstallShield 유형에는 DVD 배포가 포함될 수 있습니다. 이러한 디렉토리 이름을 추가하거나 [Ee] xpress / 만 추가하여 InstallShield LE 배포 파일이 저장소에 들어가는 것을 방지 할 수 있습니다.
다음은 설치 관리자 용 SingleImage 배포와 함께 Install Shield LE를 사용하는 VS2010 C # 프로젝트 용 .gitignore입니다.
#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
~$*
나는 이것이 여전히 정보를 공유하는 오래된 질문임을 이해합니다. Visual Studio 2017에서는 솔루션 파일을 마우스 오른쪽 단추로 클릭 하고 소스 제어에 솔루션 추가를 선택할 수 있습니다.
소스 폴더에 두 개의 파일이 추가됩니다.
- .gitattributes
- .gitignore
이것이 가장 쉬운 방법입니다.
In Visual Studio 2015 Team Explorer> Local Git Repositories> Project> Settings> Git> Repository Settings> Ignore & Attribute Files. 기본적으로 Visual Studio 솔루션에서 무시해야하는 항목이있는 .gitignore 파일을 추가 할 수 있습니다.
다음 .gitignore
은 제가 작업 중이던 최근 프로젝트 에서 발췌 한 것 입니다. 컴파일 출력을 포함하여 Visual Studio와 관련이 있다고 생각되는 항목을 추출했습니다. 크로스 플랫폼 프로젝트이므로 다른 빌드 시스템에서 생성 된 파일에 대한 다양한 무시 규칙이 있으며 정확하게 분리했다고 보장 할 수 없습니다.
*.dll
*.exe
*.exp
*.ilk
*.lib
*.ncb
*.log
*.pdb
*.vcproj.*.user
[Dd]ebug
[Rr]elease
아마도이 질문은 Community Wiki 여야합니다. 그래서 우리 모두는 어떤 유형의 프로젝트에서 어떤 파일을 무시해야하는지에 대한 주석과 함께 하나의 마스터 목록을 함께 편집 할 수 있습니까?
에 신용 이 하나 옌스 레만 - 당신은 소스 디렉토리가 컴파일러 프로젝트 파일과 빌드 출력에 별도로 보관하는 경우, 당신이 그것을 부정하여 .gitignore를 단순화 할 수 있습니다 :
path/to/build/directory/*
!*.sln
!*.vcproj
사용중인 언어를 말하지 않지만 위의 내용은 C ++ 프로젝트에서 작동합니다.
여기 파티에 늦었지만 다음을 사용하는 것도 발견했습니다. 일부는 공개 리모컨으로 푸시 할 때 민감한 파일을 숨기는 데만 유용 할 수 있습니다 .
#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/
나는 이것이 오래된 스레드라는 것을 알고 있지만이 페이지를 방문하는 새롭고 오래된 사람들을 위해 이러한 파일을 생성 할 수있는 gitignore.io 라는 웹 사이트가 있습니다. 웹 사이트에 방문했을 때 "visualstudio"를 검색하면 이러한 파일이 생성됩니다. 또한 하나의 문서에 연결된 파일을 무시하는 여러 언어 / ide를 가질 수 있습니다.
아름다운.
솔루션에서 dbproj를 사용하는 경우 다음을 추가 할 수 있습니다.
#Visual Studio DB Project
*.dbmdl
[Ss]ql/
Visual Studio에는 2015 년 이상에서 즉시 Git을 지원하기 때문에 바로 가기 가 있습니다 . 새 솔루션 (또는 .git
폴더 가없는 일부 )의 경우 솔루션 탐색기의 소스 제어 기능을 사용하십시오 .
솔루션을 마우스 오른쪽 버튼으로 클릭Add Solution to Source Control...
하고 팝업 메뉴 에서 항목을 선택 합니다.
.git
리포지토리를 자동으로 초기화 .gitignore
하고 솔루션 및 .gitattributes
파일 (줄 끝 등)에 필요한 항목을 추가합니다 .
텍스트는 VS 콘솔에 나타납니다.
A new Git repository has been created for you in C:\<path to your solution>
Commit ______ created locally in repository.
끝난!
다음은 내 파일에 대해 .NET 프로젝트에서 사용하는 것.gitignore
입니다.
[Oo]bj/
[Bb]in/
*.suo
*.user
/TestResults
*.vspscc
*.vssscc
이것은 내장 된 Visual Studio 테스터를 사용하는 거의 모든 MS 접근 방식이며 거기에 일부 TFS 바인딩이있을 수있는 프로젝트도 있습니다.
다른 포스터에서 언급했듯이 Visual Studio는이를 .gitignore의 일부로 생성합니다 (최소한 MVC 4의 경우).
# SQL Server files
App_Data/*.mdf
App_Data/*.ldf
프로젝트가 솔루션의 하위 폴더 일 수 있고 .gitignore 파일이 솔루션 루트에 저장되기 때문에 실제로 로컬 데이터베이스 파일을 건드리지 않습니다 (Git에서에서 확인 projectfolder/App_Data/*.mdf
). 이를 설명하기 위해 다음과 같이 해당 줄을 변경했습니다.
# SQL Server files
*App_Data/*.mdf
*App_Data/*.ldf
일부 프로젝트는 Visual Studio 파일 에 추가 *.manifest
할 수 있습니다 .gitignore.io
새 프로젝트의 일부 Visual Studio 프로젝트 속성이 매니페스트 파일을 생성하도록 설정 되었기 때문 입니다.
"참조 Visual Studio에서 매니페스트 생성을 "
그러나 그것들을 생성했고 그것들이 정적이라면 (시간이 지나도 변하지 않는), .gitignore
파일 에서 그것들을 제거하는 것이 좋습니다 .
Windows 용 Git 과 같은 프로젝트가 방금 수행 한 작업입니다 (Git 2.24, 2019 년 4 분기).
Johannes Schindelin ( )의 commit aac6ff7 (2019 년 9 월 5 일)을 참조하십시오 . (의해 병합 - Junio C 하마노 - 에 59438be 커밋 2,019 30 구월)dscho
gitster
.gitignore
:.manifest
파일 무시 중지Windows에서는 "매니페스트", 즉 기능 및 요구 사항을 설명하는 XML 문서 (예 : 최소 또는 최대 Windows 버전)에 연결하여 실행 파일에 추가 메타 데이터를 포함 할 수 있습니다.
이러한 XML 문서는.manifest
파일에 저장되어야 합니다.최소한 일부 Visual Studio 버전
.manifest
은 명시 적으로 지정된 파일이 없을 때 파일을 자동 생성 하므로 Git에 파일을 무시하도록 요청했습니다.그러나
.manifest
이제 멋진 파일이 있습니다.compat/win32/git.manifest
, 따라서 Visual Studio가 자동으로 매니페스트를 생성하지도 않으며 Git이.manifest
더 이상 파일 을 무시하도록하지는 않습니다.
참고 URL : https://stackoverflow.com/questions/2143956/gitignore-for-visual-studio-projects-and-solutions
'development' 카테고리의 다른 글
활동이 원래 추가 된 창을 유출했습니다. (0) | 2020.09.27 |
---|---|
T를 열거 형으로 제한하는 일반 메서드 만들기 (0) | 2020.09.27 |
HTML에서 "role"속성의 목적은 무엇입니까? (0) | 2020.09.27 |
PHP와 열거 (0) | 2020.09.27 |
Vim에 텍스트를 붙여 넣을 때 자동 들여 쓰기 끄기 (0) | 2020.09.27 |