Как правильно настроить TortoiseSVN «Глобальный шаблон игнорирования»? - PullRequest
39 голосов
/ 08 октября 2008

Я бы хотел, чтобы TortoiseSVN (1.5.3) игнорировал определенные папки, их содержимое и некоторые другие файлы, где бы они ни появлялись в моей иерархии каталогов, но я не могу правильно задать строку глобального игнорирования.

Что бы я ни делал, это либо добавляет много, либо игнорирует слишком много

Какой правильный «Глобальный шаблон игнорирования» игнорировать ....

Folders : bin obj release compile 
Files   : *.bak *.user *.suo 

Обновление: чтобы уточнить ... да, я использую это в Windows.

Ответы [ 5 ]

46 голосов
/ 08 октября 2008

В настоящее время в моем шаблоне глобального игнорирования есть следующее:
bin obj CVS .cvsignore * .user * .suo Отладочная версия .pdb test. Thumbs.db

Работает очень хорошо, игнорируя несколько скрытых или временных файлов / папок ....

Так что для ваших конкретных требований:
Папки: bin obj release compile
Файлы: * .bak * .user * .suo

Я бы использовал:
bin obj release compile * .bak * .user * .suo

3 голосов
/ 08 октября 2008

Если вы используете Windows, вам не нужно использовать шаблон игнорирования, подобный этому:

* / bin * / obj

для каталогов? А может быть, даже:

*/bin/* */obj/*

Я должен признать, что осознал это только после того, как совершил неправильные поступки, поэтому я не испытал это вживую. Обратите внимание на использование прямой косой черты в шаблоне каталога.

(см. Эту ссылку для источника: http://svn.haxx.se/tsvnusers/archive-2007-03/0281.shtml )

3 голосов
/ 08 октября 2008

Это я использую для .NET. Обратите внимание, что я использую VB6, а также другие пакеты, поэтому есть дополнительные записи. Также он чувствителен к регистру.

*. Chm * .dat * .dll * .ini * .err * .exe * .DLL * .INI * .ERR * .EXE * .backup * .zip * .ZIP * .vbw * .scc *. vbg * .log * .exp * .lib .vrs .SCC * .PRF * .prf * .NIP * .NOP * .nip * .nop * .out * .bjob * .job * .prt * .tmp * .txt * .EX_ * .ex_ * .MDP * .bak * .BAK * .CFG * .cfg * .TXT * .vrs * .VRS * .scc * .SCC * .vsc * .VSC *. mdb * .MDB * .cur * .oca * .setup * .png * .suo * .user Отладочный выпуск bin * .pdb * .trx TestResults * .WS ~ * .ocx

Эти три оказались критически важными в значительном сокращении количества подстановочных знаков файлов, которые я должен был отследить.

Отладочный релиз bin

2 голосов
/ 29 сентября 2015

(добавление к старому вопросу ..)
Это зависит в основном от вашего языка. Так что здесь уже есть некоторые версии для VB6 и других.

Это для Visual Studio & C # :

global-ignores = *.suo *.user *.userosscache *.sln.docstates *.userprefs debug release Debug Release bin x64 x86 obj Obj *_i.c *_p.c *_i.h *.ilk *.meta *.obj *.pch *.pdb *.pgc *.pgd *.rsp *.sbr *.tlb *.tli *.tlh *.tmp *.tmp_proj *.log *.psess *.vsp *.vspx *.sap Thumbs.db _UpgradeReport_Files *.dbmdl

и переходит в ваш

%APPDATA%/Subversion/config

файл. Если у вас есть свежий config файл, как и у меня, вы найдете только global-ignore записей, которые закомментированы, поэтому вы можете добавить строку.

Он берется в основном из женьшеня в https://github.com/github/gitignore/blob/master/VisualStudio.gitignore.

Общий случай для любого языка
В основном, прибегая к помощи gitignore (язык или инструмент), вы найдете примеры файлов gitignore, синтаксис которых похож на global-ignore SVN, вам просто нужно выполнить некоторое редактирование (все записи в одной строке для SVN, каждая запись в новой строке для GIT).

Хороший текстовый редактор, такой как Sublime или Notepad ++ , очень помогает при конвертации.

2 голосов
/ 28 сентября 2012

Обратите внимание, что при использовании subversion 1.7+ не ожидаются пути в глобальном списке игнорирования (строка глобальных игнорирований в файле% appdata% \ subversion \ config). Смотри http://tortoisesvn.net/docs/release/TortoiseSVN_en/tsvn-dug-ignore.html

Итак, чтобы игнорировать каталоги bin и obj в всех проектах: global-ignores = bin obj

...