Филиал из локальной рабочей области

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

Я никогда не использовал ветвление в TFS, и когда я увидел "Ветвь" из версии Workspace, я подумал, что это то, что мне нужно. Но этот вариант не действует, как я предполагал.

Как я могу создать новую ветку из моей "ЛОКАЛЬНОЙ КОПИИ проекта" и включить все локальные изменения? "Опция, о которой я упоминал выше, создает что-то вроде ветки из... Я не знаю, из чего, но я знаю точно, что не из моей локальной версии со всеми изменениями. Как я заметил, сгенерированная ветка не имеет файлов и проекта, которые я добавил.

Ответ 1

Что бы я сделал:

  • Положите свою работу.
  • Ветвь из соответствующей исходной папки
  • Используйте TFS Power Tools для доступа в другое место.
  • Заезд.

Таким образом, вы получаете хорошую чистую ветку, и вы получаете запись об изменениях, которые вы сделали.

Ответ 2

  • Загрузите и установите TFS Power Tools
  • Поставьте свою работу и запомните имя
  • Создайте ветку назначения из туловища, в котором вы работали.
  • Сопоставьте новую ветку и получите локальную копию кода
  • Откройте Windows PowerShell и перейдите в каталог исходного исходного кода
  • Запустите следующую команду, заменив имя и структуру набора Shelve на свой собственный:

    tfpt unshelve /migrate "MyShelveset" "/source:$/project/trunk" "/target:$/project/branch" 
    

(цитаты вокруг имени шелласта требуются, если они содержат пробелы)

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

Ответ 3

Ответ Robaticus правильный, но я хочу добавить некоторые детали, которые я не видел в явном виде в другом месте. Я просто должен был сделать это, и он действовал так, как будто он работал, но это не так. Он претендует на авторинг или копирование, но файлы не создавались, и никаких проверок в новой ветке не было. Ошибка должна быть поднята, но не отображается.

Оказывается, что кавычки вокруг источника и цели являются необязательными, если пути не имеют пробелов, но они требуются, если существуют пробелы.

Здесь шаблон:

tfpt unshelve MyShelfsetName /migrate "/source:$/MyPath/My Path with spaces/MyBranch" "/target:$/MyPath/My Path with spaces/MyOtherBranch"

Ответ 4

Возможно, вы захотите попробовать следующее: Я предполагаю, что вы используете Eclipse IDE и TFS Plugin. Вы должны быть администратором TFS для проекта.

  • Откройте проект в рабочем пространстве и щелкните его правой кнопкой мыши
  • вы увидите "Команда" в меню.
  • выберите "Поделиться проектом" в расширенном меню "Команда" .
  • введите данные Team Foundation Server, чтобы подключить его, и выберите соответствующий раздел/Проект, чтобы внести изменения. Вы также можете создать новую папку с помощью панели управления TFS.

  • Поделитесь проектом в выбранной ветке/папке.

(ЭТО ПРОСТО ДОСТУПНО ПРОЕКТУ TFS-ВАМ НУЖНО ПРОВЕРИТЬ СЕЙЧАС)

  1. щелкните правой кнопкой мыши по проекту еще раз. в меню "Команда" вы найдете опцию "checkin changes".
  2. щелкните по нему, и ваши изменения будут отправлены на сервер.

Ура!