Проект, над которым я работаю, включает в себя две так называемые библиотеки кода, разработанные другими командами. Используя TFS, мы просто включаем их папки TFS в наши рабочие пространства и включаем их проекты Visual Studio в наши файлы решений. Если другая команда зарегистрирует файл в библиотеках, мы немедленно получим их изменения.
Очевидно, что вы можете увидеть обратную сторону этой договоренности (мы не знаем, когда кто-то внесет решающее изменение - и они тоже этого не делают).
Для лучшей изоляции от повседневных изменений этих библиотек я планирую разветвить код библиотеки. Мы планируем рассматривать эти ветки только для чтения - мы никогда не будем вносить свои собственные изменения.
В определенные моменты мы хотели бы обновить эти ветви, когда каждая библиотека находится в стабильной точке. (Большинство команд используют SCRUM, так что это будет код конца Спринтов каждой команды Библиотеки). Я ожидаю, что каждая команда Библиотеки будет маркировать свой код в этих точках.
Ветвление в первый раз кажется легким. А как насчет обновления веток каждым выпуском библиотеки?
Должен ли я сливаться? Как мне указать, что я хочу объединить только изменения из определенной метки? Предположим, что я выполню слияние через некоторое время после выпуска библиотеки, чтобы «последний код библиотеки имел изменения, которые я бы не хотел - нестабильные изменения для их следующего выпуска).
ИЛИ - мне просто каждый раз пересоединяться?
ИЛИ - ДЕЛАТЬ что-нибудь еще?
Мы все еще хотим создать их код самостоятельно, поэтому я не ищу никаких предложений по регистрации двоичных файлов для каждого выпуска библиотеки.