TFS: просмотр всех неверсионных файлов
Как просмотреть все неверсионные / неконтролируемые файлы с помощью TFS 2010 и VS 2010?
проблема, с которой я сейчас сталкиваюсь, заключается в том, что после создания нового контроллера и просмотра с помощью контекстного меню (MVC3) я решил откатить все эти файлы, отменив добавление в моем окне ожидающих изменений. Я обнаружил, что файлы больше не находятся в TFS, но все еще находятся на диске. Я хотел бы видеть файлы, которые в настоящее время находятся на диске, но не версионные TFS.
Это тривиально в Subversion и Git (эти файлы всегда будут отображаться, если им не сказать явно игнорировать их), но я не вижу возможности просмотреть их в TFS - они не отображаются в моем представлении ожидающих изменений. Я новичок в TFS, поэтому я предполагаю, что мне просто чего-то не хватает.
4 ответов
Если вы пытаетесь определить все файлы, которые существуют в вашей файловой системе в папке проекта, которые не находятся в TFS,
- открыть visual studio
- открыть Team Explorer (ctrl-w, m)
- перейти в "управление версиями"
- перейдите к папке, в которой вы хотите найти неверсионные файлы.
-
в верхней панели есть значок с двумя папками и увеличительным стеклом между ними, hinttexted " сравнить папки"
сравните " исходный путь: "того, что он предлагает (возможно, версия сервера) против" целевого пути: "вашей локальной версии.
он выделит все различия в этих папках. Любые файлы, которые существуют в правом (локальном) столбце, являются файлами, которые в настоящее время не хранятся в TFS.
Team Foundation Server не удаляет файлы при отмене ожидающего добавления для них - это делается для предотвращения возможной потери данных. (Это возможно, например, что вы хотите создать файл локально, но не проверьте его в Team Foundation Server-поскольку Visual Studio и Eclipse автоматически отправляют этот файл в качестве дополнения, если бы он удалял файлы при отмене добавления, то не было бы никакого способа иметь файл локально, который не существовал на сервер.)
на Team Foundation Server power tools есть различные операции, которые помогут вам синхронизировать свою локальную рабочую область на сервере.
Если у вас есть файлы на диске, которые не находятся на сервере, и вы хотите их обновить (нажмите их на сервер), вы можете использовать tfpt online
. Это позволит обнаружить все файлы, которые были добавлены или изменены локально и создать новые ожидающие изменения для обновления сервера. Это особенно полезно, если вы работаете отключен от сервера и хочет, чтобы pend эти изменения.
Если у вас есть файлы на диске, которые вы хотите удалить или иным образом обновить с последней версией сервера, вы можете использовать tfpt scorch
. Это позволит обнаружить все файлы, которые были добавлены, изменены или удалены локально и позволяют обновить их с последней версией сервера. Если вы просто хотите посмотреть список файлов и на самом деле не предпринимать никаких действий автоматически, есть режим предварительного просмотра вы можете использовать с tfpt scorch /preview
.
предполагая, что у Вас установлен PowerShell и tf.exe (из инструментов TFS Explorer) и sed.exe (GNU Tool) в вашем пути вы можете использовать этот скрипт (PowerShell) для выполнения работы:
if((tf prop .) -ne $null) {
tf folderdiff . /r /view:targetOnly /noprompt | sed -e '/^=\+$/,/^=\+$/d; /^$/d' | %{
if(Test-Path $_) {
rm $_ -Rec
}
}
}
на самом деле, довольно простой способ удалить файлы/папки из вашей файловой системы-просто удалить (или переместить) локальные папки проекта, а затем сделать "получить конкретную версию" из TFS. Обязательно установите оба флажка "перезаписать".
затем он вытащит все, что в настоящее время хранится в TFS.