Advertisement
If you have a new account but are having problems posting or verifying your account, please email us on hello@boards.ie for help. Thanks :)
Hello all! Please ensure that you are posting a new thread or question in the appropriate forum. The Feedback forum is overwhelmed with questions that are having to be moved elsewhere. If you need help to verify your account contact hello@boards.ie

Removing main trunk in branch hierarchy and having just same level branches

Options
  • 15-02-2012 1:01pm
    #1
    Registered Users Posts: 527 ✭✭✭


    Hi all,

    I have decided to branch my TFS solution into 4 branches. I originally had one VS solution that was under source control, called 'Development'. As the product grew I decided to create 3 branches for the three clients that use it. So I have:
    1. Development
    2. Development-Client1
    3. Development-Client2
    4. Development-Client3
    I had a new change request for 'Development-Client2' and wrote the code and made the changes. When I checked the source files in I noticed that 'Development' is also taking these new changes into account.

    What I expected to happen, when I branched 'Development', was that I would have 4 versions of the solution and I could merge changesets between them.

    From my current set up, it appears that any changes I make in #2, #3 or #4 will be automatically added into #1.

    Since the branching occurred recently I feel I am in a position to sort it out now. Does anyone know what I need to to to get 4 independent branches?

    In my solution file I have 6 projects:
    1. ASP.NET Web Site (running against localhost).
    2. Console Application
    3. Class Library (Business Logic)
    4. Class Library (Data Access)
    5. Class Library (Entities)
    6. Class Library (Common Methods)
    I have noticed that for my new features in 'Development-Client2' that the changes in projects 2-6 have not been added to the 'Development' branch or the 'Development-Client1' or 'Development-Client3' branches.

    However, any changes I made to the 'ASP.NET Web Site (running against localhost)' in the 'Development-Client2' have been replicated into all branches.

    Thanks in advance
    Tagged:


Comments

  • Registered Users Posts: 1,216 ✭✭✭carveone


    Wow. I really hope that's not the case. Is that Sourcesafe? I'm not familiar with it (for good reasons) but I'm sure that SVN and git and Veracity don't merge willy nilly from a branch into trunk - I mean, that's what branches are for! I think Perforce can do automatic merging but it has to be setup that way.

    I know this isn't helping but it's bizarre behaviour in my opinion. Maybe someone who's familiar with MS version control can tell you what's happening.


  • Registered Users Posts: 7,157 ✭✭✭srsly78


    Had similar problem with svn externals before. Branches had externals pointing at dependencies in trunk. No clue how sourcesafe or whatever does it tho.


  • Registered Users Posts: 527 ✭✭✭Sean^DCT4


    I am using Team Foundation Server 2010 and Visual Studio 2010 Ultimate.

    What I think has happened, in the following order, is:
    1. I had a solution called Development under source control (TFS)
    2. I created a branch called Development-NewFeatureX
    3. I branched Development-NewFeatureX 3 times, I was left with Development, Development-NewFeatureX, Development-Client1, Development-Client2, Development-Client3
    4. I deleted the Development-NewFeatureX branch.
    5. I made loads of changes to projects 1, 3, 4 and 5 under the Development-Client2 branch.
    6. At this point, I realised that project 1's changes had been replicated across the other branches.

    I have also noticed that in the Source Explorer part of TFS that the each of the branches' solution file is pointing at 'Development-NewFeatureX' for the project [ASP.NET Web Site (running against localhost)].

    I have tried to check out the solution file and modify the path from:
    ..Development-NewFeatureX/ASPNETSITE
    
    to:
    ..Development-ClientX/ASPNETSITE
    

    However this is just not working and source control seems to be overwriting the solution file.

    I think it is at the point that I concede defeat and try to start a new solution.

    If any TFS gurus have any idea what I'm talking about please give me some advice :(


  • Registered Users Posts: 527 ✭✭✭Sean^DCT4


    Got this sorted a couple of weeks ago so I just thought I'd share with anyone that ever comes across this.

    It turns out that TFS took the original solution file (that was mapped to a local IIS path) and maintained the IIS path across the 4 branches.

    What I done to fix this was,
    • Checked out the branched solution files.
    • Modified the .sln file and corrected the IIS path and the local mapped path.
    • Merged the main trunk "Development" into the other branches and it's all working as I originally expected it to

    Lesson learned, do not branch a solution that has a web application that is running off IIS. Who would have though Cassini was useful for something.. :)


Advertisement