2010-07-26 13 views
39

Yerel çalışma kopyasında svn özelliklerini kirletmeden bir dosyayı yok saymanın bir yolu var mı? Yerel görmezden gelme desenimin (örneğin geçici dosyalar) depoya yayınlanmasını ve çok sayıda işe yarar bilgi içermesine neden olmamayı istemiyorum.SVN, çalışma kopyasının yerel olduğunu yoksayar mı?

Tıpkı git'de olduğu gibi .git/info/exclude olabilir. SVN'de benzer bir yolu var mı?

+0

İlgili: http://stackoverflow.com/questions/635446/svn-is-there-a-way -to-mark-a-dosya-gibi-değil- – Joey

cevap

23

Bunları changelist ignore-on-commit içine koyabilirsiniz. Bakınız this question and its answer.

DÜZENLEME: Bu yalnızca tortoisesvn ve muhtemelen diğer istemcilerle çalışır, her seferinde svn ile değil.

+2

Teşekkürler. Aslında bu yöntemi biliyorum, ancak işlemeye aldırmamak sadece svn 1.5+ ile çalışır ve her istemci bunu desteklemez (örneğin, Subclipse). –

+0

Bu yöntem benim gereksinimime uymasa da, SVN için en iyi ve en resmi yanıt olduğunu düşünüyorum. Teşekkürler :) –

+1

Yoksay-on-commit diğer müşterilere yayınlanmayacaktır. [resmi başvuru] (http://tortoisesvn.net/docs/release/TortoiseSVN_tr/tsvn-dug-changelists.html) – Nickolas

12

Evet var. Goto TortoiseSvn Ayarı -> Genel.

Genel bir yoksayma kutusu vardır.

*.fbl6 *.fbpInf *.fb6lck *.*scc *.aps *.bak *.cache *.eto *.ilk *.ncb *.obj *.patch *.pch *.plg *.rdl.data *.sbr *.sqlsuo *.suo *.svclog *.tlh *.tli *.tmp *.user *.vshost.* *DXCore.Solution [Bb]in [Dd]ebug [Oo]bj [Rr]elease _[Rr]e[Ss]harper.* _UpgradeReport_Files Ankh.Load Backup* CVS PrecompiledWeb svnignore[.-] [Tt]humbs.db UpgradeLog*.* _vti_* lint.db 
+5

Oh Evet! Neredeyse "global" göz ardı listesinin aslında "yerel" (yerelde tutulduğu ve svn ile senkronize edilmemiş) anlamında "yerel" olduğunu unutmuştum. Bunun için bana hatırlattığın için teşekkürler! :) Ancak, tüm çalışan kopyaları etkiler, bunun için bu dosyanın bir çalışma kopyasında görmezden gelmesini ama diğerinde bulunmamasını isteyebilirim. –

+0

Ben foo.vshost.exe göz ardı etmek için nasıl bulundu buldum - .vshost.' olan desen işe yaramaz, şimdi buldum '' .vshost. * 'Çalışır. –

5

Bu teknik daha fazla gibi .gitignore (Managing svn:ignore with impunity) .git/info/excludes daha edilmektedir:

  • bir oluşturun depoya gitmek istemiyorum öğeleri görmezden iyi bir başlangıç ​​noktası olarak aşağıdakileri ekleyin Projenizin en üstünde .svnignore.
  • projeniz üstünden, Şimdi
  • kaydet o

görmezden bakım dosyaları/joker karakter bir listesini yapın, yapabileceğiniz:

$ svn propset svn:ignore -F .svnignore . 

En azından bu Sadece 1 propset değiştirmek zorundasınız.

.svnignore'unuzu (.gitignore gibi) izlemeniz veya yok saymanız gerekir.

2

Eğer tamamen aşağıdaki eserlerini uzak dizin indirirken önlemek istiyorsanız:

svn update --set-depth exclude <folder-to-ignore>

+1

Bu yalnızca bir uzak dizinin * indirilememesi için çalışır * (örneğin, yerel/widget'larda çalışıyorum, yerel/büyük çapta sahip olma umurumda değil), yerelden büyük ölçüde hariç tutulacak derinliği ayarlayabilirim: largelibrary won Hiç senkronize edilmez ve eğer yerel olarak yaratırsam çatışmalar ortaya çıkar. Yaklaşıyor, çünkü bu tam olarak benim kullanım durumum, diğer cevaplar geçerli değil. – LSerni

+0

Bunu işaretlediğiniz için teşekkürler, @Iserni. Deponun oldukça büyük olduğu ve benim umursamadığım çok sayıda klasörün olduğu durumlarda benim kullanım durumum da buydu. Bu açıklamayı cevaba ekledim. – emragins

+0

bu sorunun kesinlikle bir ilgisi yok – Kip

İlgili konular