TFS kaynak denetiminden belirli bir dosyayı nasıl dışlayabilirim


89

Birden çok yapılandırma dosyamız (app.DEV.config, app.TEST.config, vb.) Ve doğru yapılandırma dosyasını app.config'e kopyalayan bir ön oluşturma olayımız var. Açıkçası, konfigürasyona özgü dosyalar kaynak kontrolündedir - ancak şu anda App.Config de öyle ve bu olmamalı.

O bir dosyayı nasıl kaynak kontrolünden hariç tutabilirim, ama tabii ki projeden değil.

VS 2005 ve 2005 Team Explorer kullanıyorum.



Yanıtlar:


39

MS Power Tools'da dosya adlarını normal bir ifadeye göre filtrelemenizi sağlayan bir iade politikası (Yasak Kalıplar Politikası) vardır. Bkz: Microsoft Team Foundation Server Power Tools

İade politikaları tamamen kusursuz olmasa da, TFS'nin aradığınız gibi kullanıcı tanımlı kuralları uygulamak zorunda olduğu en yakın şeydir.

(Ve diğerlerinin de söylediği gibi, bir dosyayı veya klasörü perdeleyebilirsiniz, yani Kaynak Kontrolünde kalır ve ekipteki diğer herkes tarafından görülebilir, ancak siz onu kaldırmaya karar verene kadar bilgisayarınıza kopyalanmaz; veya siz dosyayı silebilir, yani en son aldıklarında herkesin bilgisayarından silinir - ancak bu seçeneklerin hiçbiri bu tür dosyaların kaynak kontrolüne eklenmesini ilk etapta engellemez)


1
Açıkladığınız ekip projesi genelinde hariç tutma özelliği maalesef TFS'de mevcut değil. (benimkinden daha yeni bir 2010 sürümünde olmadığı sürece) "Kaynak Kontrol Dosyası Türleri" iletişim kutusu hangi dosya türlerinin birleştirilemeyeceğini, yani özel olarak kilitli olduğunu kontrol eder.
Richard Berg

VSTS2005 / 2008 işteyim ama bunu evde yazıyorum, bu yüzden cevabım oldukça zayıf hafızamdan geldi - pardon! İhtiyacınız olan şeyin TFS Power Tools "yasak kalıplar" ilkesi olduğunu anladım. Bu, bir normal ifade kullanarak dosya adlarını eşleştirmenize ve istenmeyen dosya adlarının kontrollerini engellemenize olanak tanır: msdn.microsoft.com/en-us/teamsystem/bb980963.aspx#checkin
Jason Williams

İyi aradım, bu politikayı unutmuşum. Görünürlük sağlamak için yayınınızı düzenleyeceğim.
Richard Berg

Bir dalı nasıl kaldırabilirim ??? Yanlışlıkla bir şube gizlediğiniz ve bunu uncloak VS2012 olamaz
rolivares

95

TFS2012'de kolaydır, bir .tfignore dosyası oluşturun

http://msdn.microsoft.com/en-us/library/tfs/ms245454%28v=vs.110%29.aspx#tfignore

######################################
# Ignore .cpp files in the ProjA sub-folder and all its subfolders
ProjA\*.cpp
# 
# Ignore .txt files in this folder 
\*.txt
#
# Ignore .xml files in this folder and all its sub-folders
*.xml
#
# Ignore all files in the Temp sub-folder
\Temp
#
# Do not ignore .dll files in this folder nor in any of its sub-folders
!*.dll

# EDIT https://msdn.microsoft.com/en-us/library/ms245454(v=vs.110).aspx#tfignore
# A filespec is recursive unless prefixed by the \ character.

Bir özyinelemeli yok sayma paketleri klasörünü nasıl yaparsınız, ancak paketleri / repositories.config'i dahil edersiniz?
Maslow

@Maslow, anladıysanız, cevabımı düzenlemekten çekinmeyin. oldukça yaygın bir ayar gibi görünüyor ve bunu örneğe
koymalıyız

Proje koleksiyonunun kök dizinindeki bir .tfignore dosyası, bu klasörün eşlenmiş / indirilmiş olmasına sahip olmasa bile hiyerarşiyi otomatik olarak uygular mı?
Maslow

2
Bu yalnızca Yerel çalışma alanlarında desteklenir. msdn.microsoft.com/library/vstudio/…
Sumo

45

Solution Explorer'da App.config dosyasını seçin ve File -> Source Control -> App.config'i Source Control'den Hariç Tut'u seçin.


1
küçültülmüş dosyalarımı saklamamak için tam olarak ihtiyacım olan şey.
Valamas

13
Bu seçeneğin sıradan Bağlam Menüsünde listelenmemiş olması beni rahatsız ediyor
Eric Herlitz

6
O seçeneğe sahip değilim. : '- (
Oca Aagaard

2
Visual Studio 2013 Ultimate'da da mevcut değil :(
Ytrog

4
Visual Studio Premium 2013'ümde (Sürüm 12.0.3023.00 Güncelleştirme 3) mevcut (Dosya> Kaynak Denetimi> Gelişmiş> App.config'i Kaynak Denetiminden Hariç Tut altında).
Martin Bäckström

22

Bulması zor bir seçenek var:

1. Çözüm Gezgini'nde dosyayı veya birden çok dosyayı seçin

2. Dosya -> Kaynak Kontrolü -> Gelişmiş'e gidin

Hariç Tutulacak Yol

ve işte burada

Hariç Tut

Unutmayın: Solution Explorer'da bir dosyaya sağ tıklarsanız sadece "en önemli seçenekleri" bulursunuz :)


13

İstediğiniz tek şey projede bir dosyaya sahip olmak, ancak TFS ile kaynak kontrolü altında olmamaksa, sadece SourceControl'e gidin, söz konusu dosyayı silin ve proje dosyasını kullanıma alma işleminizi geri alın (dosyayı şu şekilde projeden kaldırmaya çalışacaktır. iyi). Ardından, hariç tuttuğunuz dosyanın silinmesini iade edin. Çözüm gezgininde, hariç tuttuğunuz dosyanın yanında kaynak kontrolü simgesi olmadığını görmelisiniz. Proje dosyası orada bir dosya listelemelidir, ancak bu dosya artık kaynak kontrolü altında olmamalıdır.

Unutmayın, başka herhangi bir kişi artık en son geldiğinde projede eksik bir dosya görecek.


7

TFS, klasör / dosya düzeyinde perdeleme yapmanızı sağlar. Bir şey gizlendiğinde, TFS onu eşitlemeye çalışmaz (bir svn: yok sayma gibi).

Çalışma alanınızı kurarken, TFS'nin göz ardı etmesini istediğiniz her şeyi perdeleyin. Daha ayrıntılı bir nasıl yapılır burada .


Keşke klasörü tüm çalışma alanları için gizlemenin bir yolu olsaydı ... güvenlik altında herhangi bir eşdeğer ayar görmeyin.
felickz

Dosya düzeyinde perdeleyemezsiniz; sadece klasör.
dudeNumber4

@ dudeNumber4 Bu özelliğin TFS'nin sonraki sürümlerinde, ilk yanıt yazıldıktan çok sonra devre dışı bırakıldığına inanıyorum. Yine de bu hacklemeyi deneyebilirsiniz: social.msdn.microsoft.com/Forums/vstudio/en-US/…
joshua.ewer

5

Bu benim için çalıştı:

Bunun bir yolu, bir projeye yeni veya mevcut bir öğe eklemektir (örneğin, projeye sağ tıklama, Mevcut Öğeyi Ekleme veya Windows gezgininden çözüm gezginine sürükleyip bırakma), TFS'nin dosyaları veya klasörleri işlemesine izin verin, ardından beklemeyi geri alın öğe (ler) üzerindeki değişiklikler. TFS, bekleyen bir ekleme değişikliğine sahip oldukları işaretini kaldırır ve dosyalar projede sessizce oturur ve TFS'nin dışında kalır.

Kaynak: = "> Belirli bir dosyaları TFS kaynak denetiminden nasıl hariç tutabilirim


2

Visual Studio 2013 (ve 2012)

Bu özellik, dosya (lar) seçilerek ve şuraya giderek kullanılabilir:

File > Source Control > Advanced > Exclude ... from Source Control

2012'de dışlama yok.
ExpatEgghead

2013'te de görmüyorum
VictorySaber

2

Bu soru bir süre önce sorulmuştu, ancak benim yaşadığım sorunla aynı türden bir soruna ait.

Sorun:

  • Kodumuzu kontrol etmek istiyoruz.
  • Daha sonra projemizi inşa etmek istiyoruz.
    • Derlememiz sırasında, derleme işleminin tamamlanması için uygun dosyalara sahip olduğumuzdan, dosyaların taşınması için Derleme Olaylarına güveniyoruz.
  • Derleme Etkinliğimiz dosyaları kopyalamaya çalıştığında, Erişim Engellendi hataları alıyoruz.

Sebep:

  • Team Foundation Server Visual Studio Eklentisi, dosyalarımızı iade ettiğimizde dosyalarımızdaki Salt Okunur özniteliğini OKUMA DOĞRU olarak değiştirir.

Derleme Etkinliği Örneği:

  • "$ (TargetDir) SomeFile.ext" "$ (ProjectDir)" kopyala

Yukarıda, bir dosyayı Hedef Derleme Yolumuzdan (bin \ debug veya bin \ release klasörleri) Proje Klasörümüze taşımamız yeterlidir. Benim durumumda, bu, yükleyicime proje oluşturulmuş dosyaları dahil edebilmemdi. Kurulumcum onları Proje Çıktısının bir parçası olarak kapmıyordu.

Düzeltme: (Bunu çözdüğümde neredeyse yüzüme tekme atıyordu)

Yeni Yapı Etkinliği:

  • attrib -R "$ (ProjeDir) BazıDosya.ext"
  • "$ (TargetDir) SomeFile.ext" "$ (ProjectDir)" kopyala
  • attrib + R "$ (ProjectDir) BazıDosya.ext"

Hepimiz Build Events ile eğleniyoruz değil mi? Yukarıda sadece 2 şey yapıyorum, salt okunur özelliğini kaldırıyorum, artık dosyalar salt okunur değil. Dosyamı aslında istediğim gibi kopyalayın. Ardından, Visual Studio ve Team Foundations'ı mutlu etmek için Salt Okunur Özniteliğini (isteğe bağlı) değiştirin.

Ve evet ... Bu konuda hala yüzüme tekme atıyorum.



0

TFS2012'den daha eski bir sürüme sahipseniz ve bu nedenle bir .tfignoredosya oluşturamaz veya File > Source Control > Advanced > Exclude …seçeneği kullanamazsanız, şunu deneyebilirsiniz:

  • Windows Gezgini'nde hedef dosyanın bir kopyasını oluşturun.
  • Takım Gezgini / Visual Studio'da hedef dosyadaki Bekleyen Değişiklikleri (varsa) geri alın.
  • Hedef dosyayı Windows Gezgini'nde silin.
  • Hedef dosyanın kopyasını silinen hedef dosyanın konumuna taşıyın ve silinen hedef dosyayla aynı ada sahip olacak şekilde yeniden adlandırın.

TFS artık hedef dosyadaki değişiklikleri görmezden geliyor gibi görünüyor. Dosyayı yeniden düzenlemeniz gerekirse, TFS daha sonra dosyayı Bekleyen Değişiklikler içeren dosyalar listesine geri koyacağından Visual Studio'yu kullanmayın.


0

Dosyayı Kaynak Kontrol Gezgini'nden seçip üzerine Sağ Tıklayabilir ve buradan "Yeniden Adlandır" seçeneğini seçebilir ve dosya adının sonuna ".hariç tut" ekleyebilirsiniz.

Ve sonra dosyayı iade etmeyi unutmayın ve bundan sonra dosyanızın Kaynak Kontrolünden çıkarıldığını görebilirsiniz.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.