Предположим, что какой-то разработчик в моей команде отложил свои изменения, которые он сделал в ветке A. А я работаю над веткой B. Могу ли я отложить его изменения в ветку B? (С помощью графического интерфейса или командной строки)
105
Ответы:
Инструменты Visual Studio Power Tools должны позволить вам это сделать.
Например, чтобы объединить набор полок под названием «Имя набора полок», созданный на Branch1, в Branch2 используйте следующее:
источник
Альтернативное решение для tfpt, которое позволяет избежать объединения каждого файла вручную
Проблема с инструментом tfs power заключается в том, что вы выполняете «безосновное слияние», поэтому необходимо подтверждать каждый файл . У меня был набор полок из более чем 800 файлов, и я никогда не доверял кнопке «автоматическое объединение» и не хотел просматривать каждый файл по очереди - поэтому мне пришлось найти другой способ!
C:\temp\shelveset-name
(Примечание: при экспорте нет индикатора выполнения, поэтому, если у вас есть большой набор полок, экспорт которого занимает много времени, вам просто нужно проверить в проводнике Windows (Файл> Свойства> Размер), что файлы все еще сбрасываются, если вы думаю заморожено).
Теперь вам просто нужно скопировать их в новую ветку с помощью проводника Windows.
Это сработало для меня:
c:\temp\shelveset-name
должна быть переименована, чтобы соответствовать новой ветке. Совет: убедитесь, что вы копируете в нужное место !!!Важно: я обнаружил, что если вы сначала не отключите TFS, то в конечном итоге все новые файлы (из набора изменений без полок) будут отображаться без маленькой красной галочки, и вам придется исключить и снова включить их. чтобы заставить их добавить. Если у кого-то есть альтернативное решение этой проблемы, я хотел бы знать - обновление, похоже, не работает.
источник
Информация на полке включает в себя конкретный путь, по которому она идет. К сожалению, я не знаю ни одного автоматического способа убрать с полки в другое место, кроме того, в которое он был поставлен. Когда я хотел сделать это, мне приходилось проверять эквивалентные файлы в новой ветке, снимать с полки из старой ветки, а затем вручную копировать файлы.
РЕДАКТИРОВАТЬ: Ну, я думаю, я делал это трудным путем. Мне нужно попробовать решение Курта. :)
источник
Я потратил много времени, чтобы сделать это, и мне нужно было решить несколько проблем. Это возможно, но здесь несколько проблем и несколько правил, которым нужно следовать, чтобы избежать этих проблем.
Ошибка:
Эта конкретная проблема была решена путем выполнения команды из корневой папки исходной ветки. Это противоречит некоторым ответам на SO, где они говорят использовать «целевую» ветку - нет, использовать «источник»:
После этого появился второй выпуск. Кажется, что не удалось подключиться к серверу TFS. Я понял, что у меня установлено несколько VS и подключено к разным серверам TFS. Я использовал VS12, и у меня было рабочее пространство и подключение к серверу. Но я не понимал, что такое же соединение необходимо реплицировать в VS13 для работы TFPT2013. Он подключается к тому же серверу и рабочему пространству.
Я также пробовал сделать это с помощью TFPT2015, но я установил его, и он не установил TFPT.exe, поэтому он был бесполезен. Итак, я пробовал с TFPT2013 на TFS2015, и это сработало для этой конкретной команды. Интересно, а почему бы и нет, если VS12 / 13 отлично работает против TFS2015?
Подвести итоги
источник
Следующие шаги можно использовать для небольших наборов полок (~ 20 файлов или меньше).
источник