シェルセットセットには変更セットがあるため、自然順序付けはありません。これは が多くのマージ競合につながることがあります。
私はここであなたのポイントを見ることができません、あなたのための "自然な順序"は何ですか?チェンジセットの年代順は、あなたがチームで働き始めるときに与えられた順序に従わない。
それが見直されますまで、開発者がコードをチェックインすることができない場合は、審査の上 依存関係を置き、審査が短い期間内に審査 をしない場合は、これらのshelvesetsは、他の タスクに干渉することができます。
この場合も、タスクBを実行する前にタスクAを開始しているためではない「通常のタスク開発」と同じ状況があります。タスクAをBの前にチェックインする(BはA、それはここでのポイントではありません)。タスク開発のワークフローの最終ステップとしてレビューを検討してください。レビューアの依存関係は実際には複雑になりますが、安定したビルドを実現し、社内標準に準拠したコードを持っています。今、あなたは再び将来的に マージの競合を引き起こす可能性があり周りではなく、コードをチェックインより ブセットを、渡す必要があるとして、他の開発者との
コラボレーションが苦痛になります。
シェルフセットよりも簡単なことは分かりますか?変更されたコードを電子メールでzipファイルに送信したいですか?参照に影響を与えたくないときは、シェルセットを使用することで、開発者間でコードを共有するのが簡単になります。ここでも、あなたが言及しているマージ競合の問題はわかりません。ここで
はいくつかのアドバイスです:
誰かが別のDEVのブセットを取り戻している場合は、DevのAはブセットを作成したと言うとDevのBはDevのBは、独立したクリーンを持っていることを確認し、それを確認するのにしたいと専用のワークスペースを使用しないでください。通常の "dev"ワークスペースでは、unshelveする必要はありません。コードレビューのための専用のワークスペースは、あなたが言及したマージ競合の問題を緩和します。
理論的には、対象ブランチに統合する前に、すべてをレビューする必要があります。実際にそうするのは難しいと言われているので、あなたのチームがそのようなプロセスの習慣を持っていない場合、何かを完璧にすることを目指してはいけません。彼が取り組んでいるアプリケーションをよく知っているシニア開発者は、レビューの前にチェックインする権限を持つことができます。これはすべてのトレードオフの問題です。この場合、柔軟性と開発者エクスペリエンスが向上しますが、参考文献の品質と安定性が損なわれる可能性があります。本物の勝者はいません。あなたのために重要なことに基づいて選んだのです。
コードレビューにブランチを使用しないでください。
シェルフセットによるコードレビューの経験は、VS/TFSではやや不完全であることに同意しますが、代替案よりも優れています。マイクロソフトでは、この点でよりうまくいく可能性があることを認識し、VS11/TFS11の改善点を示しています。次のバージョンではまだコードレビューの経験がありますが、まだシェルセットに基づいていますが、俳優間のより完全なコミュニケーションシステムがあります。この改善は「私の仕事」の経験で行われ、物事はよりスムーズになりました。 tfspreview.comとVS11ベータ版を試してみるか、ブログ記事(Brian Harry)を読んで詳しい情報を入手してください。ここであなたが興味を持つだろうa linkです。
あなたが分岐を使用して、代わりに棚上げ変更のマージを見てきましたか? – cordialgerm
@picklesでは、分岐とマージはレビュー目的のために過度のものになります。分岐やマージは、製品バージョン、開発チームをサポートするためにほとんど行われていますが、コードレビューの分岐については聞いていません。 – Chandermani
@Chandermani 2011年ALMサミットでは、機能ブランチのチームブランチで開発者ブランチを使用するチームがありました。過剰なものと思われましたが、その複雑なプロジェクトは本当にそれから恩恵を受けました。マージ機能を維持するために、毎日2日に2回の逆統合を開発者ブランチまで実行します。 – jessehouwing