Как создать ветку из определенного набора изменений, если изменилась иерархия папок? - PullRequest
0 голосов
/ 13 сентября 2010

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

/
  ./src
  ./model
  ./processtemplates
  ./data
  ./otherfolders

Я изменил структуру следующим образом:

/
  ./trunk
    ./src
    ./model
    ./data
  ./branches
    ./v1
      ./release1
        ./src
        ./model
        ./data
      ./release2

Проблема в том, что мне нужно создать ветку из определенной предыдущей версии, но в папкеструктура изменилась, поэтому я не могу получить этот набор изменений для папки / trunk для создания ветви.Точное сообщение об ошибке, которое я получаю: «Не найдено подходящих элементов в $ / в указанной версии.»

Какой лучший способ сделать это?Я имею в виду создание ветви из последней ревизии и возврат всех изменений в старую ревизию.Я надеялся, что есть более легкий путь.

1 Ответ

1 голос
/ 15 сентября 2010

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

mkdir c:\BranchFolder
cd c:\BranchFolder
tf.exe workspace /new /s:http://tfs:8080 BranchWorkspace
tf.exe workfold /map:"$/","C:\BranchFolder"
tf.exe branch "$/" "$/branches/v999" /version:Cxxxxxx /noget /noprompt

Подтвердите и зарегистрируйте.замените v999 на любую папку, в которую хотите перейти, и замените xxxxxx на соответствующий номер набора изменений.

Как всегда - когда вы работаете в таких областях, где вы не совсем увереныкакими будут результаты, проверьте свою работу перед регистрацией.

...