Как я могу связать мой проект VS 2003 / XP Mode с соответствующим расположением папок на сервере с помощью TFS?

Каким-то образом мой проект перепутал привязки управления исходным кодом, и я пытаюсь привязать локальные файлы к правильному месту на сервере. Сначала я пытаюсь отменить привязку проекта, но когда я пытаюсь заново установить привязку и "Добавить решение в систему управления исходным кодом", я получаю "Проект PDAClient.csdproj, который вы пытаетесь добавить в систему управления исходным кодом, не может быть добавлен потому что элемент AppSettings.cs уже находится под контролем источника в выбранном месте"

Очевидно, он выбрал AppSettings.cs в качестве файла проблемы, на который нужно пожаловаться, потому что он первый в алфавитном порядке. Я предполагаю это, потому что я временно удалил его из проекта, попробовал снова, и он жаловался на следующий файл в альфа-порядке таким же образом.

Чтобы попытаться превзойти TFS, я переименовал MSSCCPRJ.SCC в MSSCCPRJ.SCCHide, а также переименовал PDAClient.vssscc в PDAClient.vsssccHide, но он просто создал новый PDAClient.vssscc.

(PDAClient - это название решения и проекта)

Если я пытаюсь из VS 2003 File> Source Control> Change Source Control, я вижу это:

Если я затем выберу Bind для решения, а затем одноименный проект, я вижу:

Если я нажимаю "Обзор" или кнопку с многоточием в столбце "Привязка к серверу", он просто "мигает", но не открывает диалоговое окно для установления соединения.

Таким образом, привязка решения "недействительна", но привязка проекта предположительно действительна...

Если я тогда выберу "ОК", я получу это:

... что выглядит многообещающе ("Да! Исправить привязки!"), но нажатие кнопки "Исправить" просто возвращает меня в диалоговое окно "Изменить управление исходным кодом", ничего не сделав. Поэтому я, наконец, неохотно выбираю другой вариант, чтобы "продолжить существующие привязки", и вижу:

Хорошо... это говорит мне, что я должен проверить проект, чтобы это сработало, и я пытаюсь продолжить, но вижу:

Обратите внимание, что он пытается подключить меня к Handheld/Development/Development/HHS, но это не то, что я хочу и нуждаюсь. DEV это другая ветка; это ветка Release. Вы можете видеть, что в приведенном выше скриншоте в свойстве Path решений (задано значение C:\Project\sscs\Handheld\Release (и т. Д.)), А не... Разработка...(и т. Д.) Я сравнил их с помощью встроенного -in инструмент и увидел, что, действительно, версия сервера была из ветви Dev (не нужной ветви Release) и взял локальную версию. Но потом я получил:

Когда я увидел, что некоторые файлы проекта были извлечены, я надеялся, что, возможно, теперь это сработает. Я проверил это, внеся изменения в имя метода, но в итоге увидел: "Произошла ошибка или отмена пользователя во время извлечения. Некоторые файлы, возможно, не были извлечены. (Файл не был извлечен.)", А затем это было затем "Не удалось выполнить рефакторинг, потому что некоторые из затронутых файлов нельзя было сделать доступными для записи."... и поэтому мои изменения были автоматически отменены.

Очевидно, это не сработает, потому что мне нужно внести изменения в этот проект.

Продолжая изучать то, что мне осталось в меню " Файл"> "Управление исходным кодом", я выбрал "Добавить проект из управления исходным кодом...", чтобы посмотреть, что он может предложить. Сначала это дает мне диалог, где я подключаюсь к TFS; Я сделал. Я переместился в нужное место на сервере, и это выглядит хорошо и готово к работе:

При нажатии кнопки "ОК" открывается диалоговое окно, в котором говорится: "Локальная папка, которую вы выбрали для хранения своего решения, содержит один или несколько файлов решений с тем же именем, что и файлы в папке сервера управления версиями." С кнопками "Перезаписать", "Отмена" и "Справка".

Я выбираю Перезаписать. Затем мне предлагают диалог:

Я выбираю PDAClient.sln (HHS было прежним названием решения / проекта)

Однако когда я впоследствиинажимаю кнопку "Открыть", я получаю: "Папка" C:\Project\sscs\Handheld\Releases\6-4-0\HHS "не может использоваться для решения или проекта, поскольку она уже используется. хранить часть другого решения или проекта."

У меня нет выбора, кроме как выбрать "ОК", который сводит на нет весь процесс.

В качестве окончательного решения о возможном переломе воротника в синдроме "любой порт в шторме" я выбрал "Файл"> "Управление исходным кодом"> "Поставщик MSSCCI Team Foundation Server". Это вызывает Kafka-esque Windows 2010 Shell внутри VS 2003 внутри XP Mode. В соответствии с тем, что я там вижу, мои настройки верны: копии Сервера с проектом Release связаны с локальными файлами Release files:

Но \Releases\HHS неактивен, что указывает на отсутствие связи между папками сервера и локальными папками. И обратите внимание, что большинство (не все, но большинство) файлов в настройках Releases фактически хранятся локально в папках разработки! Есть несколько ключевых файлов, которые связаны правильно:

Все (десятки) невидимых файлов (только первые и последние видны на последних двух скриншотах) также связаны с разработкой.

Хотя у меня нет пункта контекстного меню типа "bind" для \Releases\HHS, есть "карта локальная"; хотя это уже якобы сопоставлено правильно, я пробую это, но получаю "Локальная папка не может быть установлена ​​в C:\Project\sscs\Handheld\Releases\6-4-0\HHS, потому что это уже локальная папка для папка другого сервера. "

Итак, я перехожу к \Development\HHS, у которого есть "действительная" привязка; заметьте, опять же, что он связан с неверным локальным путем (Releases вместо Dev).

Поэтому для этого я сначала выбираю контекстный пункт меню "Удалить сопоставление". Это дает мне возможность "Редактировать или удалить отображение рабочей области". Я изменяю локальную папку с релизов на Dev. Выглядит хорошо; Dev теперь связан с Dev, и привязка все еще считается действительной; на этот раз это действительно так (надеюсь, во всяком случае).

Теперь я снова переключаю свое внимание на Релизы, но элемента контекста "map local" больше нет... и, хотя он показывает правильную связь между расположением сервера и локальным, он все еще неактивен...???

Примечание. Список файлов "Pending Changes" идентичен, и выделены как \Development\HHS, так и \Releases\HHS: одни и те же три файла в обоих случаях показаны как находящиеся в локальной папке Releases, а все остальные в локальном Dev папка.

Вернувшись в VS 2003 (из оболочки VS 2010, в которой работает поставщик TFS MSSCCI), я перехожу к "Изменить управление исходным кодом" и вижу, что и решение, и проект имеют статус "Действительный" сейчас... когда я выбираю " ОК ", однако, он говорит мне, что многие файлы не совпадают, и либо обратиться к администратору, либо, возможно, Get All решит эту проблему. Я предварительно заглядываю в "Выбрать все", но вижу, что мой проект все еще связан с разработкой. ARGHHHH!!!!

Кто-нибудь может разобраться в этом безумии? Как я могу получить папки сервера Release, указывающие на локальные папки Release, и папки Dev Server на локальные папки Dev, без какого-либо наложения и несоответствия?

ОБНОВИТЬ

Сегодня утром я снова посмотрел в Source Control Explorer (TFS MSSCCI), и мой Dev\HHS снова вернулся к настройке на неправильный локальный путь (Releases) и подключился (я думаю, это то, что является символом столкновения с каждым - другие вертикальные стрелки слева от папки указывают).

Что касается Releases \ HHS, он не был подключен (без глифа), но я смог щелкнуть правой кнопкой мыши и отобразить новую папку, которую я настроил.

Вот что я вижу сейчас (после изменения отображения DEV из локальной папки Releases обратно в локальную папку DEV СНОВА!).

Свойства для Dev HHS:

Свойства для выпуска HHS:

Я не знаю, имеет ли это смысл для вас, но для меня это выглядит подозрительно.

ОБНОВЛЕНИЕ 2

Безумие продолжается и сегодня. Мое решение утверждает, что имеет две ожидающие проверки:

Когда я выбираю "Check In", я получаю диалог подтверждения; Я продолжаю с кнопкой "Check In" там. Затем я получаю диалог "Check In - Исходные файлы". Там я тоже выбираю кнопку "Проверить". Но потом я вижу: "Файлы не проверены"

Если я повторю операции выше, последнее сообщение:

No Changess to Check In
All of the changes where either unmodified files or locks. The changes have been undone by the server."

???

IMO, я бы сэкономил много времени, просто заархивировав файлы, когда я хотел сохранить последние изменения, вместо того, чтобы использовать этого утомительного зверя; Я трачу больше времени на игры с инструментами "производительности", чем на более простой подход. Дайте мне почтовые файлы и хорошую утилиту различий над этим котлом с разбитыми надеждами и хитроумными грязными трюками!

ОБНОВЛЕНИЕ 3

И если я закрою проект и снова открою его, я увижу следующее три раза подряд:

Так кто же в синих пламенах сказал вам найти такой сервер?!?!

Тогда я получаю:

И наконец это снова:

Argggggghhhhhhhhhhhhhhhhh!!!!!!!!!!!!!!!!!!!

ОБНОВЛЕНИЕ 4

Хотя путь к решению и проекту правильный (выпуски), это то, что показывают файлы в проекте:

Вкладка ветвей, как показано в обновлении, показывает, что Dev спускается до выпуска; Я не знаю, правильно это или нет, потому что Release был веткой Dev,

или же...???

Во всяком случае, я вижу выше из File > Source Control > Team Foundation Properties

ОДНАКО, когда я выбираю "Файл"> "Управление исходным кодом"> "Поставщик MSSCCI Team Foundation Server", привязка кажется правильной - в проекте HHS Dev в качестве местоположения локальной папки Dev, а в проекте "HHS Release" папки выпуска в качестве локального расположения.

Я не знаю, кто больше смущен: я, любой, кто читает это, или сам TFS/MSSCCI. По иронии судьбы, такие вещи действительно убивают производительность.

0 ответов

Другие вопросы по тегам