Trudno jest odpowiedzieć na stwierdzenie bez przykładów, jak to nie działa, ale ważne jest, aby zrozumieć, że TFVC (w trybie „Server Workspace”, który był mechanizmem przed TFS 2012) nie sprawdza stanu lokalnego systemu plików . Obszary robocze serwera TFVC to system typu „wyewidencjonuj-edytuj-zamelduj”, w którym jest to zgodne z projektem, celową decyzją podjętą w celu znacznego zmniejszenia ilości plików we / wy wymaganych do określenia stanu obszaru roboczego. Zamiast tego informacje o obszarze roboczym są zapisywane na serwerze.
Umożliwia to bardzo wydajne skalowanie obszarów roboczych serwera TFVC do bardzo dużych baz kodów. Jeśli jesteś w wielogigabajtowej bazie kodu (takiej jak Visual Studio lub drzewo źródłowe Windows), twój klient nie musi skanować lokalnego systemu plików w poszukiwaniu plików, które mogły się zmienić, ponieważ umowa, którą masz z TFS, jest taka, jawnie wypisze plik, gdy będziesz chciał go edytować.
Oczekuje się, że nie będziesz oznaczać pliku jako tylko do zapisu i zmieniać go bez uprzedniego jawnego sprawdzenia. Jeśli pójdziesz tą trasą, serwer nie wie, że wprowadziłeś zmiany w pliku, a wykonanie operacji „Pobierz najnowsze” nie zaktualizuje lokalnego obszaru roboczego, ponieważ nie poinformowałeś serwera o tym zmiany.
Jeśli zrobić obalić ten mechanizm następnie można użyć tfpt reconcile
polecenia, aby zbadać swoją lokalną przestrzeń roboczą dla zmian, które zostały wykonane na miejscu.
Jeśli korzystasz z opcji „Pobierz określoną wersję” i wybierasz opcje „wymuś” i „nadpisz”, jest bardzo prawdopodobne, że masz zwyczaj omijania wszystkich wymuszeń wdrożonych przez TFS, aby nie zrobić sobie krzywdy, i prawdopodobnie powinieneś rozważyć lokalne obszary robocze TFVC.
Lokalne obszary robocze TFVC zapewniają system kontroli wersji typu „edycja-scalanie-zatwierdzenie”, co oznacza, że nie trzeba jawnie wypisywać plików przed ich edycją i nie są one dostępne tylko do odczytu na dysku. Zamiast tego wystarczy edytować plik, a klient przeskanuje system plików, zauważy zmianę i przedstawi ją jako oczekującą.
Lokalne obszary robocze TFVC są zalecane w przypadku małych projektów, które nie wymagają szczegółowej kontroli uprawnień, ponieważ zapewniają znacznie ładniejszy przepływ pracy. Nie musisz być w trybie online i nie musisz jawnie wypisywać plików przed ich edycją.
Lokalne obszary robocze TFVC są ustawieniami domyślnymi w programie TFS 2012 i jeśli nie są włączone, należy zapytać administratora serwera. (Organizacje z bardzo dużymi bazami kodów lub surowymi wymaganiami kontrolnymi mogą wyłączyć lokalne obszary robocze TFVC).
Doskonała książka Erica Sinka Version Control By Example przedstawia różnice między systemami checkout-edit-checkin i edit-merge-commit oraz kiedy jeden jest bardziej odpowiedni od drugiego.
Książka Professional Team Foundation Server 2013 zawiera również doskonałe informacje na temat różnic między obszarami roboczymi serwera TFVC a lokalnymi obszarami roboczymi TFVC. Dokumentacja i blogi MSDN również zawierają szczegółowe informacje: