To Merge or a not to Merge

1. Create Team Project
2. Put some files under SC
3. Create new Team Project as branch from 1-st
4. Make some changes in new branch
5. Select 1-st project and click Merge

I've got message "The project *** is not a branch of...", really strange... I want merge changes from source project to the just created branch and as I understand it is imposible (but ot works n another direction, from branch to source). Another thing, we using a lot of branches in our project (more then 30 branches), we can create branches one from another so what about merge in such scenarios As I found merge works only for the children and for the parent. Why this limitation

One more issue:
* Sometimes I want merge manually, so I need powerfull merge tool. e.g AraxisMerge, can I tune TFS for runing external tool on compare or merge commands, and I need a chance to select manual merge in the merge wizard


Answer this question

To Merge or a not to Merge

  • Anthony Wood

    Yahor,

    I don't know the Why behind your first question, so I leave that to be answered by someone from MS.
    The second question on configuring your own tool can be answered with a definite Yes. Go to the Tools Menu -> Options -> Source Control -> Visual Studio Team Foundation Server and on the property page select Configure User Tools ...

    Here you can add on a per file extension basis for a specific command the tools you would like to use.
    Hope this helps,
    Marcel



  • Bruce Frost

    "The project **** is not a branch of ***." error message is currently the last attempt error message that merge performs at the SQL level. I am fixing bugs in this area for RTM to make the causes of the problems much more clear.

    If you bring up the workspaces dialog via File/Source Control/Workspaces, click edit on the workspace you are using then you will see the list of workspace mappings for that workspace.

    If you look at the mapping list, odds are fairly good that you will notice that you do not have mappings at the Team Project level for both or either of these projects. If this isn't the case please let me know.

    Merging only between child and parent branches:
    Merging code and merging branches should be a done on a consverative basis in order to ensure the user has the best possible chance to end up with a correct result. If merges were allowed between non-directly related branches a traditional three way merge could easily exhibit worse behavior to the user than just using the unix diff and patch command line utiliities. In fact, the patch behavior might end up being more useful than a traditional three way merge between such branches.

    For version 1 of Team Foundation we made the decision to focus on supporting just merges between children and parent branches.

    I hope this helps explain things,
    Bill



  • To Merge or a not to Merge