次の SVN コード リポジトリを検討してください。
/root
/OldProject
/src
/NewProject
/tags
/branches
/trunk
/src
ここで、「OldProject」が、人類によって作成されたソフトウェア開発に対する最も忌まわしい忌まわしきものの 1 つであると仮定してみましょう。「NewProject」は、目標の実装になるはずです。ハード カットオーバーができないため。一方から他方へゆっくりと移行する必要があります。
私がやりたいことは、開発者が引き続き OldProject にコミットできるようにし、システムがソースを特定のディレクトリの NewProject に同期するようにして、両方のツリーを最新の状態に保つことです。私の目標は、他の開発者がシステム構成を変更する必要がないようにすることです。シームレスである必要があります (そのため、SVN 外部はおそらく適切なオプションではありません)。私が考えることができる唯一のことは、OldProjectにステージングエリア、つまりJenkins CIワークスペースを使用し、それをrsyncしてNewProjectのワークスペースにコミットすることです。
これは機能しているように見えますが、「間違っている」と感じています。これを行うより良い方法はありますか?