Team Foundation Server Version Control

Associate
Joined
25 Feb 2007
Posts
905
Location
Midlands
Hi,

We're using TFS and I'm trying to get my head around how to do version control.

So, I have my main solution (trunk?) and I'm happy with pulling and pushing latest changes etc.

My issues come with how I do releases, fixes and further development.

So say I get to a point where I'm releasing version 1.0, do I branch my main trunk and label it Release 1.0, then continue development on main trunk?

If so, so I now have a Release 1.0 version and a dev version I've been working on, but I need to fix a bug in Release 1.0. Do I branch Release 1.0 labelling it Fix xxx, make the changes and then merge back in to Release 1.0?

Sorry of the long post and if I'm using the wrong terminology - I have a bit more experience with Git than I do with TFS (which I realise you can use in TFS, I just decided against it because I am an idiot!)

Cheers!
 
Associate
Joined
22 May 2013
Posts
1,229
Location
N. Ireland
My previous company used TFS, we generally just labeled and continued to work off the main trunk. Any fixes would be branched and merged as you suggested.

I'm not claiming this is the best plan but it was workable.
 
Associate
OP
Joined
25 Feb 2007
Posts
905
Location
Midlands
Yeah that's what I don't like about my current solution - it just seems a bit disjointed.

Am I right in thinking that once you've done a branch and pulled that branch down, you need to do a commit right away? I've just done this and the 'Pending Changes' area basically showed all my files needed committing, even though it was a new branch?
 
Associate
Joined
10 Nov 2013
Posts
1,808
Haven't used TFS before so this might not be relevant, but we would have a trunk, then a version 1 branch off of that, and a 1.0 release branch off of that.

If you have a bug in 1.0 then you can fix it in the version 1 branch (or fix in trunk and merge into 1), then do a new release from the version 1 branch
 
Associate
Joined
10 Nov 2013
Posts
1,808
Yea in general. If we have big features to introduce then we would develop those in a 'private' branch off of trunk so that it wouldn't affect anything else that's going on in trunk. Then it would get merged back in once it's done
 
Back
Top Bottom