In TFS (We are using 2012) why is the default to convert your source folder to a branch?
I really don't consider the source a branch. What, if any, advantages/disadvantages does this have?
In TFS (We are using 2012) why is the default to convert your source folder to a branch?
I really don't consider the source a branch. What, if any, advantages/disadvantages does this have?
Just clarifying some terminology in James Reed's answer.
re: "I don't consider the source a branch"
In a biological tree, the Trunk is not called a Branch.
In computer terminology, both sides of a
branching relationship
are calledBranches
. It is only the visualization that chooses to show the original branch as a trunk like on a biological tree. (Because the Visualization tools are written by and for us humans who prefer to think of the [1st original]source branch
as the Trunk of a biological tree, and thetarget branch
as the Branch off of the Trunk.)In TFS 2008 terminology, a
Branch
is aFolder
that has abranching relationship
to anotherFolder
. Internally they are bothfolder objects
.In TFS (since 2010) terminology, a
Branch
is an internalbranch object
that is [very much like] afolder object
with lots of extra metadata (and a different icon).re: why is the default to convert your source folder to a branch?
In almost all normal circumstances, when you want to branch the Trunk, you want the source
Folder
[object] converted to be aBranch
[object] so that you have all that extra metadata, which allows the extra Visualizations and Manipulations that are not available with a mereFolder
[object].A restriction is that a
Branch
[object] may not contain anotherBranch
[object], but aBranch
[object] can contain aFolder
[object]. So sometimes, in a complex project, you may need to convert aBranch
[object] back into aFolder
[object] so you can put it inside a higherBranch
[object].To do that, use the menu command File / Source Control / Branching and Merging / Convert to Folder. (: It is not on the right-click Context menu because it is needed so rarely. :)
If in managing your total project, you find you need/want to convert a
Folder
to aBranch
(without yet creating abranching relationship
by using the normalBranch
command), use the menu command File / Source Control / Branching and Merging / Convert to Branch.I'm not sure what you mean by "I don't consider the source a branch" the source folder by definition becomes a branch as soon as you create a branch from it. The target folder is also a branch which is a child of the source branch.
There are no disadvantages to enabling this. Regardless of whether you have this enabled or not the Source and Target will have a branching relationship and you will be able to merge changes between the 2 branches.
If you have this box enabled, as well as being able to merge between source and target you will also be able to use the branch visualisation tools in Visual Studio. These tools are usefull when you want to understand how your code will flow between branches and the merge relationships.