Я намагаюся зібрати ефективні способи, щоб інші вирішили наступну проблему. На роботі нас змусили випустити програмний патч (який встановлюється в системах кінцевих користувачів), який ми хочемо бачити лише для конкретного клієнта. Спеціальний код знаходиться у власній гілці управління джерелом. Проблема полягає в тому, що у нас є два паралельних кодових рядка (і побудувати сценарії), які потрібно синхронізувати, і кожен раз, коли ми виправляємо оригінальний код, ми повинні виправити і протестувати кодовий код.
Мені цікаво, як інші організації справляються з цим сценарієм? Ми відкриті для бізнес-рішень, а не лише технічних (пов'язаних з контролем джерел). Наприклад, ми говорили про те, щоб сказати клієнту, що він не може отримувати оновлення в цій галузі.
Наша стратегія розгалуження подібна до такої (заснована на Посібнику з розгалуження Visual Studio TFS , хоча для цього ми використовуємо Subversion)
svn
засобами, які вони не захаращують ваш нормальний робочий процес. Якщо черги з виправленнями виглядають так, що вони можуть бути корисними, ви можете спробувати їх за допомогою git-svn або hgsubversion . Використання переднього кінця DVCS для згладжування складних робочих процесів svn
може навіть спонукати людей розглянути можливість переходу до DVCS оптом, щоб отримати всі інші переваги.
hg
абоgit
я б запропонував вам поглянути на використання черг патчів ( Mercurial Queues Extension) або Stacked Git ), але я не знаю, чи є у TFS щось подібне.