2016-07-22 24 views
19

Właśnie zaktualizowałem do wersji VS2015 i wystąpił problem, którego wcześniej nie widziałem. Korzystając z istniejącego rozwiązania pod kontrolą kodu źródłowego, mogę modyfikować pliki i odbierać je jako oczekujące zmiany gotowe do odprawy do TFS.Nowe pliki Visual Studio 2015 nie są automatycznie dodawane do kontroli źródła

Jednak, dodam nowy plik (Test.cs jako przykład na tym zrzucie ekranu), nie jest on pobierany jako nowy plik.

Screenshot of new file vs modified file

jestem zobowiązany do prawym przyciskiem myszy i kliknij przycisk "Dodaj pliki do kontroli źródła"

Add files to Source Control screenshot

To nigdy nie było problemem wcześniej. Chciałbym, aby wszystko, co dodaję jako nowy plik, zostało odebrane jako oczekująca zmiana. Jak mogę to zrobić? Nie widziałem tego wcześniej w poprzednich wersjach Visual Studio.

Mogę potwierdzić, że ten problem jest taki sam na innej maszynie. Ponadto nowy plik nie został wybrany w polu "Promuj zmiany kandydatów".

Jeśli kliknę "Dodaj plik do kontroli źródła", otrzymuję tę wiadomość.

The selected file is ignored - add it anyway?

„Wybrany plik zostanie zignorowany. Dodaj go do źródła sterowania tak?”

Mój plik .tfignore ma dyrektywę ignorującą pakiety, więc nie sądzę, że ten plik jest problemem.

Jak mogę przywrócić moje ustawienia?

UPDATE:

Zauważyłem, że to dzieje się tylko na "uwolnienie" gałęzi mojej pracy. Wszystkie pozostałe gałęzie zachowują się zgodnie z oczekiwaniami. Ponadto, jeśli wezmę gałąź "Release" i nazwać ją "Release1", problem zniknie całkowicie!

Czy gałęzie o określonej nazwie "Release" nabierają specjalnej funkcjonalności w TFS?

Odpowiedz

14

Foldery o nazwie Release i ich zawartość są automatycznie wykluczane z TFS (wraz z Debugiem i wieloma typami plików). Można to zmienić dla poszczególnych folderów, tworząc plik .tfignore, zgodnie z opisem w sekcji „Dostosowywanie które pliki są ignorowane przez kontrolą wersji” tego link

Dostosuj które pliki są ignorowane przez kontrolę wersji

Domyślnie określone typy plików (na przykład pliki .dll) są ignorowane przez kontrolę wersji. W wyniku tego:

Po dodaniu zignorowanych plików do folderów mapowanych w lokalnym obszarze roboczym , nie pojawiają się one na stronie Oczekujące zmiany w Eksploratorze zespołu .

Podczas próby dodania zignorowanych plików za pomocą okna dialogowego Dodaj do kontroli źródła (na przykład przeciągając je do Eksploratora kontroli źródła Eksplorator), są one automatycznie wyświetlane na karcie Wykluczone elementy.

Można skonfigurować, które rodzaje plików są ignorowane, umieszczając plik tekstowy o nazwie .tfignore w folderze, w którym mają obowiązywać reguły. Efekty pliku .tfignore są rekurencyjne. Można jednak tworzyć pliki .tfignore w podfolderach, aby przesłonić efekty pliku .tfignore w folderze nadrzędnym.

zasady plików .tfignore

Poniższe zasady odnoszą się do pliku .tfignore:

# zaczyna linię komentarz

* i? są obsługiwane znaki wieloznaczne.

Plikspec jest rekurencyjny, o ile nie jest poprzedzony przez znak \.

! neguje się filespec (pliki, które pasują do wzorca nie są ignorowane)

przykładowy plik .tfignore

Ignoruj ​​.cpp pliki w podkatalogu ProjA i wszystkie podfoldery
ProjA * .cpp

zignorować. txt w tym folderze
* .txt

Ignoruj ​​.xml plików w tym folderze i jego podfoldery
* .xml

Igno Re wszystkich plików w folderze Temp sub-
\ Temp

Nie ignoruj ​​.dll pliki w tym katalogu ani w żadnej jego podfolderów
! *. dll

+1

@MartW Ten problem pojawił się niedawno. Wygląda na to, że zmienili coś w tej polityce w ostatniej aktualizacji TFS. –

7

Mamy ten sam problem z powodu oddziału o nazwie "Release". Ale problem jest tylko w Visual Studio 2015 Update 3. Korzystanie z Visual Studio 2015 Update 2, wszystko jest w porządku. Tak więc Visual Studio Update 3 musiało zostać zmienione. Przydałoby się wrócić do dawnego zachowania.

+1

Tak, mamy również ten sam problem po aktualizacji do VS 2015 Update 3. Żadnych problemów z wykorzystaniem poprzednich aktualizacji VS2015 –

+0

Mogę potwierdzić, że mam taki sam problem z VS 2015 Update 3 na każdej nazwie oddziału "Release" I przetestowałem. Te same gałęzie działają zgodnie z oczekiwaniami w VS 2015 Update 2. – user3016982

4

Dodaj plik do folderu .tfignore uwalnianiu zawierający rozszerzenia chcesz go nie ignorować:

!*.vb 

Próbowałem dodając to do .tfignore które istniały w moim folderze rozwiązanie i to nie pomogło . Działało to tylko wtedy, gdy dodałem jeden do folderu nadrzędnego wydania.

..\Release 
..\Release\.tfignore <-- this one 
..\Release\SolutionA\ 
..\Release\SolutionA\.tfignore 

msdn thread on the subject