これを自然に行うには、本当に本当にあなたがDVCS(例:水銀、git)が必要だと思います。CVCSを使用する場合、ブランチが必要になり、マージする地獄のない神に希望があります。
DVCSを使用する場合、コードがCIサーバーに到達する前にすでにレビューされているように、統合プロセスを階層化できます。DVCSがない場合は、コードレビュー担当者が変更を送信する前に各開発者のマシンでコードを確認しない限り、コードは確認前にCIサーバーに届きます。
それを行う最初の方法は、特に個人用リポジトリ(bitbucket、github、rhodecodeなど)の公開に役立つリポジトリ管理ソフトウェアがない場合、階層統合ロールを使用することです。次の図では、副官に開発者の作業をレビューさせ、独裁者を主なインテグレーターとして副官が作業をマージする方法をレビューさせることができます。
リポジトリ管理ソフトウェアを使用している場合の別の方法は、次のようなワークフローを使用することです。
リポジトリ管理ソフトウェアは、通常、リポジトリにアクティビティがある場合(電子メール、rssなど)に通知を送信するのに役立ち、プルリクエストを許可します。プルリクエストは通常、人々が会話に参加してコードを統合するため、プルレビュー中にコードレビューが有機的に行われます。このパブリックプルリクエストを例として取り上げます。統合マネージャは、実際にコードの必要性を修正する場合、コードは祝福されたリポジトリ(別名「中央リポジトリ」)に到着することを可能にすることはできません。
最も重要なことは、DVCSで集中型ワークフローを引き続きサポートできることです。必要ない場合は、別の派手で素晴らしいワークフローを用意する必要はありません... コードレビューセッションが完了したら、変更をdevリポジトリからCIリポジトリにプッシュする権限を誰かに与えます。
PS:画像のクレジットはgit-scm.comにあります