プロダクションホットフィックスブランチからのコードが、なんらかのdiffツールを介してメインストリームブランチよりも新しいかどうかを確認する方法があるかどうか誰かが知っていますか? (hotfix1 vs thrunk)
\src
\thrunk
\releases
\hotfix1
TFSでvs2010を使用していますが、ブランチには多数のファイルがあり、そのうちの1つのターゲットパスを再指定して、一度に1つのファイルを比較するだけで済みました。
コマンドラインツールtf.exe
を使用すると、任意のファイルの2つのリビジョンを比較できますが、どちらもワークスペースにある必要があります。
詳細については tf diff
のオンラインヘルプを参照してください(バージョンの指定については ここ )。
NB。 VSでツールを使用する|オプション|ソース管理| Visual Studio Team Foundation Server |ユーザーツールを構成して、使用するdiff/mergeアプリケーションを定義します(Web検索で、使用する適切なコマンドラインが見つかります)。ファイルタイプに.*
を入力すると、より具体的なツールセットがなくてもすべてに使用されます。
これは、Visual Studioから直接実行できます。チームエクスプローラーを開いてソース管理に移動すると、フォルダーを再帰的に比較できます(ワークスペースにないフォルダーでも可能です)。ブランチの1つに移動し、右クリックして、 Compare
を選択し、他のブランチをターゲットとして入力します。
前述の「比較」機能を使用すると便利ですが、適切なフィルターを使用すると、さらに便利になります。そうしないと、膨大な量の情報で過負荷になる可能性があります。
これが私が現在使用しているフィルターで、私にとって非常にうまく機能します:
!debug\;!obj\;!bin\;!temp\;!*ReSharper*\;*.sln;*.*proj;*.config;*.cs;*.vb;*.bmp;*.GIF;*.JPG;*.png;*.ico;*.ini;*.resx;
最初のいくつかのアイテムは、おそらく除外したいいくつかのフォルダーを排除します(使用している場合は、debug、obj、bin、temp、Resharperのものです。そうすることを強くお勧めします!)。残りは、検索に含めると便利なファイルです。表示したい他のファイルタイプがある場合は、リストの最後に追加してください。
コミットせずに1つのブランチを他のブランチにマージできます。次に、Visual Studioですべての変更を確認できます。完了したら、すべての変更をリセットする必要があります(マージしたくない場合)。
実際には、VSから、またはTFSで両方を比較するために、同じワークスペースにいる必要はありません。 1つまたは両方がファイルシステム(「比較」ダイアログの「ローカルパス...」)またはTFS(「サーバーパス...」)にある可能性があります。 「フィルター」セクションも非常に強力で、ファイルタイプごとに比較オブジェクトを拡張/制限できます。
Visual Studioから簡単に実行できますが、私のようにローカルブランチを台無しにしたくない場合は、VSTS Webサイトからも実行できます
それは思ったほど難しくはありません、:)