Najlepszy ogólny wzór SVN?

Jaki jest najlepszy (lub jak najlepszy) ogólny wzorzec ignorowania SVN do użycia?

Istnieje wiele różnych IDE, edytor, kompilator, wtyczka, Platforma, itp. określone pliki i niektóre typy plików, które "nakładają się" (tzn. pożądane dla niektórych typów projektów, a nie dla innych).

Istnieje jednak duża liczba typów plików, których po prostu nigdy nie chcesz automatycznie włączać do kontroli źródła, niezależnie od specyfiki środowiska programistycznego.

The odpowiedź na to pytanie posłuży jako dobry punkt wyjścia dla każdego projektu-wymaga tylko, aby dodać kilka elementów specyficznych dla środowiska, których potrzebują. Można go również dostosować do innych systemów kontroli wersji (VCS).

Author: Zach Burlingame, 2008-09-17

17 answers

[[2]}dodam swoje dwa grosze do tego pytania:

Używam następującego wzorca ignorowania SVN z TortoiseSVN i Subversion CLI dla natywnych projektów C++, C# / VB. NET i PERL na platformach Windows i Linux. To działa dobrze dla mnie!

Sformatowane do kopiowania i wklejania:

*.o *.lo *.la #*# .*.rej *.rej .*~ *~ .#* .DS_Store thumbs.db Thumbs.db *.bak *.class *.exe *.dll *.mine *.obj *.ncb *.lib *.log *.idb *.pdb *.ilk *.msi* .res *.pch *.suo *.exp *.*~ *.~* ~*.* cvs CVS .CVS .cvs release Release debug Debug ignore Ignore bin Bin obj Obj *.csproj.user *.user *.generated.cs

Sformatowane dla czytelności:

*.o *.lo *.la #*# .*.rej *.rej
.*~ *~ .#* .DS_Store thumbs.db 
Thumbs.db *.bak *.class *.exe *.dll
*.mine *.obj *.ncb *.lib *.log 
*.idb *.pdb *.ilk *.msi* .res *.pch *.suo 
*.exp *.*~ *.~* ~*.* cvs  CVS .CVS .cvs  
release Release debug Debug
ignore Ignore bin Bin obj  Obj
*.csproj.user *.user
*.generated.cs
 190
Author: Zach Burlingame,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2012-08-19 21:46:33

Na podstawie wzorca ignorowania Burly ' ego dodałem ReSharper do listy ignorowania

Sformatowane do kopiowania i wklejania:

*.o *.lo .la ## .*.rej .rej .~ ~ .# .DS_Store thumbs.db Thumbs.db *.bak *.class *.exe *.dll *.mine *.obj *.ncb *.lib *.log *.idb *.pdb *.ilk .msi .res *.pch *.suo *.exp ~. cvs CVS .CVS .cvs release Release debug Debug ignore Ignore bin Bin obj Obj *.csproj.user *.user _ReSharper.* *.resharper.user

Sformatowane dla czytelności:

*.o *.lo .la ## .*.rej .rej .~ ~ .# .DS_Store thumbs.db Thumbs.db *.bak
*.class *.exe *.dll *.mine *.obj *.ncb *.lib *.log *.idb *.pdb *.ilk .msi .res *.pch *.suo *.exp ~. cvs
CVS .CVS .cvs release Release debug
Debug ignore Ignore bin Bin obj Obj
*.csproj.user *.user _ReSharper.* *.resharper.user
 44
Author: 4 revs, 4 users 53%Three Sevenths,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2013-03-05 13:37:28

Mój wzorzec ignorowania dla Visual Studio:

*/bin */obj */Release */Debug *.suo *.err *.log *.obj *.bin *.dll *.exe *.LOG *.user *.pdb [tT]emp [tT]empPE Ankh.Load thumbs.db *.resharper *.vspscc *.vsssccc *.scc */_ReSharper* */_ReSharper.* bin obj *.resharperoptions *.db *.bak *_ReSharper* *.snk logs output TestResults *.crunchsolution.* *.crunchproject.*

Sformatowane dla czytelności

*/bin */obj */Release */Debug *.suo *.err *.log *.obj *.bin *.dll *.exe 
*.LOG *.user *.pdb [tT]emp [tT]empPE Ankh.Load thumbs.db *.resharper 
*.vspscc *.vsssccc *.scc */_ReSharper* */_ReSharper.* bin obj 
*.resharperoptions *.db *.bak *_ReSharper* *.snk logs output TestResults 
*.crunchsolution.* *.crunchproject.*
 33
Author: Lankymart,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2015-10-26 16:08:01

Za każdym razem, gdy natknę się na plik, którego zazwyczaj nie chcę w repozytorium, aktualizuję wzór. Uważam, że nie ma "najlepszego" wzorca - to zawsze zależy od języka i środowiska, w którym się rozwijasz.

Co więcej, prawdopodobnie nie pomyślisz o wszystkich możliwych "ignorowalnych" typach plików - zawsze napotkasz typ plików, który po prostu zapomniałeś dołączyć. Dlatego aktualizowanie wzorca działa najlepiej.

 17
Author: petr k.,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2008-09-17 17:05:49

Użytkownicy Windows mogą chcieć wrzucić pulpit.ini i kciuki.db.

 12
Author: harpo,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2008-09-17 17:02:20

Używane w moich projektach Visual Studio

*/bin */obj *.user *.suo

Możesz stamtąd rozwinąć więcej typów plików.

 4
Author: icelava,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2011-08-01 18:37:07

Użytkownicy Visual Studio (VC++) zdecydowanie muszą wykluczyć .KBC Pliki

 3
Author: Rob Walker,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2008-09-17 17:04:18

Użytkownicy Mac pewnie chcą dorzucić .DS_Store. Ponadto, jeśli istnieją dev ' y używające Emacsa lub Vima, prawdopodobnie chcesz dodać ~ ~ i ##.

 1
Author: Jim Deville,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2008-09-17 17:06:17

Do Eclipse używam:

bin
.*

.* pobiera całą konfigurację projektu. Prawie nigdy nie chcesz sprawdzić w "ukrytym" katalogu lub pliku, ale jeśli pojawi się, nadal możesz svn dodać go.

 1
Author: noah,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2008-09-17 17:08:25

Ponieważ możesz używać bibliotek stron trzecich i bibliotek dll jako części projektu(ów), nie widzę mądrości w blokowaniu *.lib i *.dll z repozytorium. Są to rzeczy, które mają być przechowywane w repozytorium.

 1
Author: graham.reeds,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2008-10-09 09:20:08

Użytkownicy Visual Studio 2010 powinni dodać ipch (folder zawierający wstępnie skompilowane nagłówki C++) i *.sdf (ogromne pliki używane przez intellisense dla każdego rodzaju projektu).

 1
Author: Dalmas,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2011-08-01 17:54:01

Wzór zależy od używanego systemu operacyjnego.

W Linuksie będziesz chciał zablokować**.o*,**. so*,**.a*, i**. la * na początek. Możesz również zablokować * * ~ *(plik kopii zapasowej z edycji) i # * # (kopia zapasowa Emacsa z awarii).

W Windows będziesz chciał **.obj*,**.lib*, i **.przynajmniej dll*.

Inne pliki, które musisz zablokować, zależą od Twojego IDE, edytora i kompilatora.

 0
Author: Branan,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2008-09-17 17:07:35

Muszę dodać Resharper do mieszanki, jeśli używasz jednego.

Kolejnym, na który warto zwrócić uwagę, jest Ankh*.*

 0
Author: Hammad Rajjoub,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2010-06-21 05:42:44

Nie zapomnij NCrunch pliki tymczasowe:

*.crunchsolution.* *.crunchproject.*
 0
Author: Richard Dingwall,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2011-10-14 08:15:20

I zrzuty pamięci (cygwin, linux)

*.stackdump core.*
 0
Author: Holger Bille,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2013-07-16 09:14:14

Gitignore.io dostarcza konfigurowalne wzorce dla Gita. Zapewniają czytelną listę, którą musisz sformatować dla SVN.

Na przykład, żądanie MicrosoftOffice i Windows zwraca

# Created by https://www.gitignore.io/api/microsoftoffice,windows

### MicrosoftOffice ###
*.tmp

# Word temporary
~$*.doc*

# Excel temporary
~$*.xls*

# Excel Backup File
*.xlk

# PowerPoint temporary
~$*.ppt*

# Visio autosave temporary files
*.~vsdx


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

# Windows shortcuts
*.lnk
 0
Author: koppor,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2016-09-13 08:59:39

Gitignore.io dostarcza konfigurowalne wzorce dla Gita. Zapewniają czytelną listę, którą musisz sformatować dla SVN.

Na przykład, żądanie MicrosoftOffice i Windows zwraca

# Created by https://www.gitignore.io/api/microsoftoffice,windows

### MicrosoftOffice ###
*.tmp

# Word temporary
~$*.doc*

# Excel temporary
~$*.xls*

# Excel Backup File
*.xlk

# PowerPoint temporary
~$*.ppt*

# Visio autosave temporary files
*.~vsdx


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

# Windows shortcuts
*.lnk

Wydaje się, że może być bezpośrednio używany jako svn:global-ignore

 0
Author: koppor,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2016-09-13 09:07:00