私は、他の人が次の問題を解決した効果的な方法を集めようとしています。職場では、特定のお客様にのみ表示したいソフトウェアパッチ(エンドユーザーシステムにインストールする)のリリースを余儀なくされています。カスタムコードは、独自のソース管理ブランチにあります。問題は、同期を保つために2つの並列コード行(およびビルドスクリプト)があり、元のコードにパッチを適用するたびに、顧客固有のコードにパッチを適用してテストする必要があることです。
他の組織はこのシナリオをどのように処理しますか?技術的な(ソース管理に関連する)ソリューションだけでなく、ビジネスソリューションにもオープンです。たとえば、そのブランチで更新を受信できないことを顧客に伝えることについて話してきました。
分岐戦略は次のようになります(Visual Studio TFS Branching Guideに基づいていますが、Subversionを使用しています)
svn
手段彼らはあなたの通常のワークフローを散らかしていません。パッチキューが役立つように見える場合は、git-svnまたはhgsubversionを使用して試してみることができます。DVCSフロントエンドを使用してトリッキーなワークフローをスムーズにするsvn
と、他のすべてのメリットを得るために、DVCSホールセールへの移行を検討することさえ奨励される可能性があります。
hg
またはgit
パッチキュー(Mercurial Queues ExtensionまたはStacked Git)の使用を検討することをお勧めしますが、TFSに同様のものがあるかどうかはわかりません。