2010-10-25 4 views
1

У меня есть несколько классов общего назначения в одном проекте, которые я хотел бы передать в другой несвязанный проект в другой папке TFS, которую я сопоставил с другим рабочим пространством. Я бы предпочел, чтобы ветвление было простым копированием, чтобы сохранить историю изменений и иметь возможность объединить любые изменения.Можно ли передать файл в другое рабочее пространство TFS?

Однако, когда я пытаюсь разветвить файл в TFS, он жалуется, что соответствующее сопоставление не существует. Есть ли способ развернуть рабочие области?

ответ

1

Оказалось, что мне просто нужно было выбрать мое рабочее пространство-проводник-источник, чтобы быть целевой рабочей областью, а не рабочей областью источника, тогда разрешено разветвление. Теперь файлы появляются в другом проекте с историей и возможностью слияния.

+1

Это работает и для меня. Папка назначения должна быть сопоставлена ​​в текущей рабочей области или вам нужно запустить команду tfs из папки назначения. – damienix

0

Нет, это невозможно - по крайней мере, не так.

Но если у вас есть библиотеки общего назначения, которые используются в различных приложениях, вы должны реорганизовать свой проект и структуру рабочего пространства в любом случае ...

Если у вас, например, два решения, которые частично включают в себя один и тот же проект (ы), а затем отобразит каждое из этих решений в отдельное рабочее пространство, тогда оно должно работать.

HTH.
Thomas

+0

Старые классы взяты из старого проекта .NET 2.0, с которым я не хочу слишком много вмешиваться. Было бы много работы по созданию библиотеки общего назначения, когда мне нужно всего пару классов. – Holstebroe

+0

Я должен возразить, что это невозможно, так как я просто сделал это (см. Примечание редактирования в моем вопросе). Он работал так же, как ожидалось, когда я выбрал рабочее пространство SCE как целевую рабочую область, а не рабочую область источника. – Holstebroe

+0

Я вижу, но разве это не слишком странно или по крайней мере неинтуитивно? Не очевидно, что части проекта A могут проходить несвязанные изменения, поскольку они также являются частью проекта B? Из-за этого довольно легко создавать ошибки, не так ли? –