Czy możliwe jest skonfigurowanie plików / folderów do ignorowania dla poszczególnych projektów w kontroli źródła TFS?
Na przykład mam witrynę z folderem zasobów, do którego nie chcę wchodzić w celu kontroli źródła. Aktywa te są utrzymywane przez oddzielny system. Nie chcę też poddawać kontroli nad źródłami kilku gigabajtów zasobów, ale potrzebuję kilku próbek na mojej maszynie programistycznej, ale nie chcę ich sprawdzać.
Jeśli pracuję nad tą witryną podczas kontroli źródła i odświeżę drzewo, pliki te zostaną automatycznie dodane ponownie
Chcę temu zapobiec.
Odpowiedzi:
Dla VS2015 i VS2017
Współpracuje z TFS (na miejscu) lub VSO (Visual Studio Online - oferta hostowana na platformie Azure)
Dokumentacja NuGet zawiera instrukcje, jak to osiągnąć, a ja po prostu pomyślnie je śledziłem w programie Visual Studio 2015 i Visual Studio 2017 przeciwko VSTS (TFS hostowany na platformie Azure). Wszystko jest w pełni zaktualizowane od
listopada 2016sierpnia 2018.Polecam postępować zgodnie z instrukcjami NuGet, ale podsumowując to, co zrobiłem:
packages
folder nie jest przypisany do TFS. Jeśli tak, to stamtąd..sln
plik, chyba że określono inaczej (instrukcje NuGet nie są do końca jasne)..nuget
folder. Możesz użyć Eksploratora Windows, aby nazwać go.nuget.
, aby pomyślnie zapisać jako.nuget
(automatycznie usuwa ostatni okres), ale bezpośrednia próba nazwania go.nuget
może nie działać (może pojawić się błąd lub może zmienić nazwę, w zależności od wersji systemu Windows ). Lub nazwij nuget katalogu i otwórz katalog nadrzędny w wierszu polecenia. rodzaj. ren nuget .nugetNuGet.config
plik, dodaj następującą zawartość i zapisz:NuGet.config:
.sln
folderu i utwórz nowy plik tekstowy i nazwij go.tfignore
(jeśli używasz Eksploratora Windows, użyj tej samej sztuczki jak powyżej i nazwij go.tfignore.
).tfignore:
.tfignore
plik i.nuget
folder do wszystkich moich różnych rozwiązań i zatwierdziłem je, apackages
folder nie próbuje już wkraść się do mojego repozytorium kontroli źródła!Dalsza personalizacja
Chociaż nie mój, uważam, że ten
.tfignore
szablon autorstwa sirkirby jest przydatny. Przykład w mojej odpowiedzi obejmujepackages
folder Nuget, ale ten szablon zawiera kilka innych rzeczy, a także zawiera dodatkowe przykłady, które mogą być przydatne, jeśli chcesz to jeszcze bardziej dostosować.źródło
Jeśli korzystasz z lokalnych obszarów roboczych (TFS 2012+), możesz teraz użyć tego
.tfignore
pliku, aby wykluczyć lokalne foldery i pliki z odprawy.Jeśli dodasz ten plik do kontroli źródła, możesz upewnić się, że inni w twoim zespole korzystają z tych samych ustawień wykluczania.
Pełne informacje na temat MSDN - http://msdn.microsoft.com/en-us/library/ms245454.aspx#tfignore
Dla leniwych:
Przykładowy plik:
źródło
.tfignore
więc utworzyłem.tfignore.
i sam usunąłem ostatnią kropkę ...tfignore
pliku z powodu braku właściwej nazwy, możesz go utworzyć lub zmienić nazwę za pomocą okna wiersza polecenia.To nie wydawać się nieco kłopotliwe do ignorowania pliki (i foldery) w Team Foundation Server. Znalazłem kilka sposobów, aby to zrobić (za pomocą TFS / Team Explorer / Visual Studio 2008). Te metody działają również z typem projektu ASP strony internetowej.
Jednym ze sposobów jest dodanie nowego lub istniejącego elementu do projektu (np. Kliknij prawym przyciskiem myszy projekt, Dodaj istniejący element lub przeciągnij i upuść z Eksploratora Windows do eksploratora rozwiązań), pozwól TFS przetworzyć plik (i) lub folder, a następnie cofnij czekanie zmiany na przedmiotach. TFS odznaczy je jako oczekujące na dodanie zmiany, a pliki będą spokojnie siedzieć w projekcie i pozostaną poza TFS.
Innym sposobem jest użycie polecenia Dodaj elementy do folderu w Eksploratorze sterowania źródłami. Spowoduje to uruchomienie małego kreatora i na jednym z kroków możesz wybrać elementy do wykluczenia (chociaż myślę, że musisz dodać co najmniej jeden element do TFS za pomocą tej metody, aby kreator mógł kontynuować).
Możesz nawet dodać niedozwolone wzorce rejestracji (w sekcji Zespół -> Ustawienia projektu zespołu -> Kontrola źródła ... -> Zasady odprawy), aby uniemożliwić innym osobom w zespole omyłkowe sprawdzenie niektórych zasobów.
źródło
W przypadku TFS 2013 :
Uruchom w VisualStudio - Team Explorer , w oknie dialogowym PendingChanges cofnij zmiany ze stanem [dodaj], które należy zignorować.
Visual Studio ponownie wykryje Add (s). Kliknij „Wykryto: x dodaj (y)” - w Wykluczone zmiany
W otwartym oknie „Promuj zmiany kadidate” można łatwo wykluczyć pliki i foldery za pomocą menu kontekstowego. Dostępne są następujące opcje:
Nie zapomnij wpisać zmienionego pliku .tfignore.
Dla VS 2015/2017 :
Ta sama procedura: na karcie „Wykluczone zmiany” w TeamExplorer \ Oczekujące zmiany kliknij Wykryto: xxx dodaj (y)
Zostanie otwarte okno dialogowe „Promuj zmiany kandydata”, a na pozycjach można kliknąć prawym przyciskiem myszy menu kontekstowe. Literówka jest teraz naprawiona :-)
źródło
Znalazłem idealny sposób na ignorowanie plików w TFS, tak jak robi to SVN.
Przede wszystkim wybierz plik, który chcesz zignorować (np. Web.config).
Teraz przejdź do karty menu i wybierz:
... i boom; twój plik jest trwale wykluczony z kontroli źródła.
źródło
Zakładam, że korzystasz z projektów witryn sieci Web. Te automatycznie przeszukują katalog projektu i przekazują wszystko do kontroli źródła. Nie ma sposobu, aby ich zatrzymać.
Nie rozpaczajcie jednak. Projekty aplikacji internetowych nie wykazują tego dziwnego i raczej nieoczekiwanego (imho: moronic) zachowania. WAP jest dodatkiem do VS2005 i jest dostarczany bezpośrednio z VS2008.
Alternatywą dla zmiany projektów na WAP może być przeniesienie folderu Zasoby poza kontrolę źródła do biblioteki dokumentów TFS. Rób to tylko JEŻELI sam projekt nie korzysta bezpośrednio z plików zasobów.
źródło