Трудно ответить на утверждение без примеров того, как оно не работает, но важно понимать, что TFVC (в режиме «Рабочая область сервера», который был механизмом до TFS 2012) не проверяет состояние вашей локальной файловой системы . TFVC Server Workspaces - это система типа «checkout-edit-checkin», в которой это задуманно, намеренное решение, принятое для значительного уменьшения количества файловых операций ввода-вывода, необходимых для определения состояния вашего рабочего пространства. Вместо этого информация о рабочей области сохраняется на сервере.
Это позволяет рабочим областям TFVC-сервера масштабироваться до очень больших кодовых баз очень эффективно. Если вы используете кодовую базу в несколько гигабайт (например, Visual Studio или дерево исходных кодов Windows), тогда вашему клиенту не нужно сканировать вашу локальную файловую систему, чтобы найти файлы, которые могли измениться, потому что у вас есть контракт с TFS. будет явно проверять файл, когда вы захотите его отредактировать.
Ожидается, что не пометит файл как доступный только для записи и изменит его без предварительной явной проверки. Если вы пойдете по этому маршруту, то сервер не будет знать, что вы внесли изменения в ваш файл, и выполнение операции «Получить последнюю» не обновит локальное рабочее пространство, поскольку вы не сказали сервер, на котором вы внесли изменения.
Если вы делаете , подрываете этот механизм, тогда вы можете использовать команду tfpt reconcile
, чтобы проверить локальное рабочее пространство на предмет изменений, которые вы внесли локально.
Если вы обнаружите, что используете «Get Specific Version» и выбираете опции «force» и «overwrite», то вполне вероятно, что вы привыкли обходить все принудительные меры, которые TFS реализовал для и вам, вероятно, следует подумать о локальных рабочих пространствах TFVC.
Локальные рабочие пространства TFVC предоставляют систему управления версиями типа edit-merge-commit, что означает, что не требуется явно извлекать файлы перед их редактированием, и они не только для чтения на диске. Вместо этого вам просто нужно отредактировать файл, и ваш клиент просканирует файловую систему, заметит изменение и представит его как ожидающее изменение.
Локальные рабочие области TFVC рекомендуются для небольших проектов, не требующих детального контроля разрешений, поскольку они обеспечивают гораздо более приятный рабочий процесс. От вас не требуется быть в сети, и вам не нужно явно проверять файлы перед их редактированием.
Локальные рабочие области TFVC по умолчанию используются в TFS 2012, и если они не включены для вас, вам следует обратиться к администратору сервера. (Организации с очень большими кодовыми базами или строгими требованиями аудита могут отключить локальные рабочие пространства TFVC.)
Отличная книга Эрика Синка Управление версиями на примере описывает различия между системами checkout-edit-checkin и edit-merge-commit и когда одна из них более подходящая, чем другая.
Книга Professional Team Foundation Server 2013 также предоставляет отличную информацию о различиях между рабочими пространствами TFVC-сервера и локальными рабочими пространствами TFVC. Документация MSDN и блоги также предоставляют подробную информацию: