Visual Studio 2008 프로젝트 용 Mercurial .hgignore


164

Visual Studio 2008로 작업 할 때 .hgignore 파일에 대한 좋은 설정은 무엇입니까?

나는 주로 스스로 개발하고, 가끔 누군가 다른 사람이 작업 할 수 있도록 저장소를 복제하는 경우가 있습니다.

obj 폴더, .suo, .sln, .user 파일 등을 생각하고 있습니다. 포함하거나 포함하지 않아야 할 파일이 있습니까?

감사!

추신 : 현재 나는 다음을 수행합니다 : 모든 .pdb 파일과 모든 obj 폴더를 무시하십시오.

# regexp syntax.
syntax: glob
*.pdb

syntax: regexp
/obj/

6
참고 : .sln 파일은 소스 제어에서 제외해서는 안된다고 생각합니다
Slavo

2
슬라 보, 맞습니다. 솔루션 파일 (.sln)에는 프로젝트 구조가 포함되어 있으므로 리포지토리에 해당 파일을 포함 시키려고합니다.
심지어 Mien

답변:


208

다음은 Git ignore 파일에서 원래 수정 된 VS2008과 함께 사용할 표준 .hgignore 파일입니다.

# Ignore file for Visual Studio 2008

# use glob syntax
syntax: glob

# Ignore Visual Studio 2008 files
*.obj
*.exe
*.pdb
*.user
*.aps
*.pch
*.vspscc
*_i.c
*_p.c
*.ncb
*.suo
*.tlb
*.tlh
*.bak
*.cache
*.ilk
*.log
*.lib
*.sbr
*.scc
[Bb]in
[Dd]ebug*/
obj/
[Rr]elease*/
_ReSharper*/
[Tt]est[Rr]esult*
[Bb]uild[Ll]og.*
*.[Pp]ublish.xml

4
아니요, 그러나 동일한 무시 파일 개념이 있습니다.
심지어 Mien

2
[Db] ebug * /-줄은 소문자 b가 아니라 소문자 b 여야한다고 가정하고이 무시 목록을 템플릿으로 사용했으며 왜 "debug"폴더가 왜 잘못되었는지 알아내는 데 잠시 시간이 걸렸습니다. ' t ignore :) 위대한 무시 파일을 가져 주셔서 감사합니다.
Nate Pinchot

4
Rob Connery가 Mercurial for Codeplex Tekpub 비디오 에서 사용한 무시 코드를 찾고 있었는데이 코드 와 정확히 일치했습니다. 잘 했어!
Ben McCormack

1
나에게 이것은 Debug.Something.dll.config라는 파일이 무시되었음을 의미하므로 [Dd] ebug * /의 후행 /는 원하는 효과가 없다고 생각합니다. 아마도 Windows의 경우 [Dd] ebug * \?
Rory

2
나에게 이것은 Debug.Something.dll.config라는 파일이 무시되었음을 의미하므로 [Dd] ebug * /의 후행 /는 원하는 효과가 없다고 생각합니다. 문제는 디렉토리에서 glob 스타일 구문이 올바르게 일치하지 않는다고 생각합니다. 당신이 디버그 및 릴리스 라인을 꺼내 파일의 맨 아래에 세 개의 새로운 라인을 교체하는 경우 : syntax: regexp[Rr]elease.*/[Dd]ebug.*/다음 제대로 작동하는 것 같다.
Rory

37

이것은 C # 프로젝트에만 해당되지만 다음 파일 / 디렉토리는 무시합니다.

  • *.csproj.user
  • /obj/*
  • /bin/*
  • *.ncb
  • *.suo

이러한 파일을 모두 무시한 후 다른 시스템의 저장소에서 코드를 실행하는 데 아무런 문제가 없습니다. 보관해야 할 항목을 찾는 가장 쉬운 방법은 폴더 사본을 만들어 필요하지 않은 것으로 생각되는 항목을 삭제하는 것입니다. 빌드를 계속 시도하고 성공적으로 빌드 할 수있는 한 계속 삭제하십시오. 너무 많이 삭제하면 소스 폴더에서 복사하십시오.

결국 당신은 커밋해야 할 유일한 파일들로 가득 찬 멋진 디렉토리를 갖게 될 것입니다.


5
개발자 팀은 모두 약간 다른 환경 (로컬 DB 인스턴스, 로컬 전자 메일 서버 등)에서 실행되기 때문에 * .config 파일도 무시합니다. 또한 암호는 web.config에 있습니다.
Ash Machine

나는 항상 당신이 그것에 대해 .suo가 필요하다고 생각했습니다. 팁에 감사드립니다. 우리는 항상 갈등을 겪었습니다.
shmeeps

24

나는 대화가 빠졌다고 느낀다. 여기 내 .hgignore 파일이 있습니다. COM 항목 (유형 라이브러리), 일부 최종 빌더 파일, CodeRush, ReSharper 및 Visual Studio 프로젝트 업그레이드를 포함하여 일반적으로 C #, C ++ 및 Visual Studio 개발을 다룹니다. 또한 현대 (c.2015) 웹 개발에 대한 무시 사항도 있습니다.

syntax: glob

* - [Cc]opy
* - [Cc]opy/
* - [Cc]opy (?)/
* - [Cc]opy.*
* - [Cc]opy (?).*
**/.*
**/scss/*.css
*.*scc
*.FileListAbsolute.txt
*.aps
*.bak
*.bin
*.[Cc]ache
*.clw
*.css.map
*.eto
*.exe
*.fb6lck
*.fbl6
*.fbpInf
*.ilk
*.lib
*.log
*.ncb
*.nlb
*.nupkg
*.obj
*.old
*.orig
*.patch
*.pch
*.pdb
*.plg
*.[Pp]ublish.xml
*.rdl.data
*.sbr
*.scc
*.sig
*.sqlsuo
*.suo
*.svclog
*.tlb
*.tlh
*.tli
*.tmp
*.user
*.vshost.*
*.docstates
*DXCore.Solution
*_i.c
*_p.c
__MVC_BACKUP/
_[Rr]e[Ss]harper.*/
_UpgradeReport_Files/
Ankh.Load
Backup*
[Bb]in/
bower_components/
[Bb]uild/
CVS/
[Dd]ebug/
[Ee]xternal/
hgignore[.-]*
ignore[.-]*
lint.db
node_modules/
[Oo]bj/
[Pp]ackages/
PrecompiledWeb/
[Pp]ublished/
[Rr]elease/
svnignore[.-]*
[Tt]humbs.db
UpgradeLog*.*

+1, 당신은 Debug /를 사용하고 있으므로 "Debug.something.cs"를 무시하지 않습니다
Sebastian

11

다음은 C # Visual Studio 프로젝트에 대한 .hgignore 내용입니다.

syntax: glob
*.user
*.ncb
*.nlb
*.suo
*.aps
*.clw
*.pdb
*\Debug\*
*\Release\*

몇 가지 참고 사항 :

  1. "디버그"및 "릴리스"외에 사용자 정의 "릴리스"가있는 경우 추가해야합니다.
  2. .hgignore를 수동으로 편집 할 때주의하십시오. 구문 오류가 발생하면 hgtortoise가 더 이상 커밋 대화 상자를 열지 않습니다.

8

My Mercurial .hgignore 파일 내용 :

syntax: glob
#-- Files
*.bak.*
*.bak
thumbs.db

#-- Directories
App_Data/*
bin/
obj/
_ReSharper.*/
tmp/

#-- Microsoft Visual Studio specific
*.user
*.suo

#-- MonoDevelop specific
*.pidb
*.userprefs
*.usertasks

필자는 주로 Microsoft Visual Studio를 사용하고 때로는 MonoDevelop를 사용하여 WinForms, ASP.NET MVC 및 모바일 프로젝트에서 작업합니다. 툴셋 및 프로젝트 유형에 따라 무시해야 할 다른 파일이있을 수 있습니다.

CodePaste.NET의 최신 버전을 http://codepaste.net/zxov7i 에 유지하려고합니다 .


4

내가 사용하는 다른 사람들 :

output
PrecompiledWeb
_UpgradeReport_Files

#Guidance Automation Toolkit
*.gpState
#patches
*.patch

3

Matlab 및 Excel / Office 자동 저장 : 몇 가지 성가신 것들이 있습니다.

# use glob syntax
syntax: glob

# Matlab ignore files
*.asv

# Microsoft Office
~$*

실수로 파일을 추가 한 다음 열려있는 실제 파일을 닫으면 Excel 및 / 또는 Matlab이 자동 저장을 삭제 한 다음 Mercurial이 어디로 갔는지 궁금해집니다. 비슷한 일을하는 다른 프로그램이 있다고 확신합니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.