タイトルを考えるのは少し難しいと思いますが、基本的に私の質問は、顧客の特別なコードを記述する必要があるときに、システムをできるだけ汎用 (正しい用語ですか?) に保つにはどうすればよいかということです。
私のシナリオは、Subversion のトランクに常駐する標準システムがあるというものです。顧客がその標準システムに準拠しない変更を行うことを希望する場合があるため、通常はコードを分岐してその分岐で開発するのが私たちの慣例ですが、トランク作業を顧客向けの特別仕様に含める必要がある場合や、顧客が望むアイデアは、ブランチとトランクの両方にある必要があります。
コード化されたすべてが非常に具体的であるように見えるので、そのような要求を処理するためのより良い方法または標準はありますか?