TFS(2012を使用しています)で、デフォルトでソースフォルダーをブランチに変換するのはなぜですか?
私はソースをブランチとは考えていません。これにはどのような長所/短所がありますか?
「ソースをブランチとは見なさない」という意味がわかりません。ソースフォルダは、ブランチを作成するとすぐにブランチになります。ターゲットフォルダーは、ソースブランチの子であるブランチでもあります。
これを有効にすることに不利な点はありません。これが有効になっているかどうかに関係なく、ソースとターゲットには分岐関係があり、2つの分岐間の変更をマージできます。
このボックスを有効にすると、ソースとターゲットをマージできるだけでなく、Visual Studioのブランチの視覚化ツールも使用できるようになります。これらのツールは、コードがブランチとマージ関係の間でどのように流れるかを理解したい場合に役立ちます。
James Reedの回答でいくつかの用語を明確にしています。
re: "ソースをブランチとは見なしません"
生物学的ツリーでは、トランクはブランチと呼ばれません。
コンピュータ用語では、branching relationship
の両側をBranches
と呼びます。生物学的ツリーのように、元のbranchをtrunkとして表示することを選択するのは、視覚化のみです。 (視覚化ツールは、生物学的ツリーのTrunkとして、[最初のオリジナル] source branch
の-thinkを好む人間が作成したため、 ブランチトランクとしてのtarget branch
TFS 2008の用語では、Branch
は別のFolder
へのbranching relationship
を持つFolder
です。内部的にはどちらもfolder objects
です。
TFS(2010年以降)の用語では、Branch
は内部branch object
であり、多くの追加のメタデータ(および別のアイコン)を備えたfolder object
です。
re:なぜデフォルトでソースフォルダをブランチに変換するのですか?
ほとんどすべての通常の状況で、トランクを分岐したい場合、ソースFolder
[オブジェクト]をBranch
[オブジェクト]に変換して、追加のメタデータをすべて持っているため、単なるFolder
[オブジェクト]では利用できない追加の視覚化と操作が可能になります。
Branch
[オブジェクト]には別のBranch
[オブジェクト]を含めることはできませんが、Branch
[オブジェクト]にはFolder
[オブジェクトを含めることができます。 ]。したがって、複雑なプロジェクトでは、Branch
[オブジェクト]をFolder
[オブジェクト]に変換して、より高いBranch
[オブジェクト]。
これを行うには、メニューコマンドFile/Source Control/Branching and Merging/Convert to Folderを使用します。 (:まれに必要になるため、右クリックのコンテキストメニューにはありません。:)
プロジェクト全体を管理している場合、Folder
をBranch
に変換する必要がある/したいことがわかります(通常のBranch
を使用してbranching relationship
をまだ作成していません)コマンド)、メニューコマンドFile/Source Control/Branching and Merging/Convert to Branchを使用します。
James Reedの回答を拡張する。 TFSに関するMicrosoftのドキュメントによると here :
「フォルダ」より「ブランチ」の2つの大きな利点があります。
ブランチ階層を表示する機能
チェンジセットを追跡する機能
フォルダーまたはファイルを分岐する
フォルダーまたはファイルを直接分岐させることはできますが、回避することをお勧めします。そうしないと、ブランチ階層を表示したり、チェンジセットを追跡したりできません。