Sam OZ
asked on
team foundation server
Hi ,
I am programmer and a user of Team foundation server ( on TFS more at a beginner level) . Currently during the development , I am asked to do the following
Checkout "my latest work folder" ( this term is explained below)
When a release comes during development for testing , Create a new folder ( naming folder as Projname_CurrentDate . For example if ProjName is XYZ and today is 2015/08/03 name is XYZ_20150803)
Even if a minor modification comes , create a new folder in TFS and upload release in it)
Is this approach really recommendable ? Infact, it potentially will have around 100 folders , which in my opinion is not a good idea
My opinion is to have a single folder ( or folder per revision and not each version) .
Can I get some expert advice on this ? ( Also, I am not quite sure how a new version is created in TFS )
Also, Is branching the way how another guy developing some of the modules will branch out and develop his modules ?
I have attached a snapshot of how TFS folders look like now. Project name is erased for security reasons
Thanks
TFS-Snapshot.jpg
I am programmer and a user of Team foundation server ( on TFS more at a beginner level) . Currently during the development , I am asked to do the following
Checkout "my latest work folder" ( this term is explained below)
When a release comes during development for testing , Create a new folder ( naming folder as Projname_CurrentDate . For example if ProjName is XYZ and today is 2015/08/03 name is XYZ_20150803)
Even if a minor modification comes , create a new folder in TFS and upload release in it)
Is this approach really recommendable ? Infact, it potentially will have around 100 folders , which in my opinion is not a good idea
My opinion is to have a single folder ( or folder per revision and not each version) .
Can I get some expert advice on this ? ( Also, I am not quite sure how a new version is created in TFS )
Also, Is branching the way how another guy developing some of the modules will branch out and develop his modules ?
I have attached a snapshot of how TFS folders look like now. Project name is erased for security reasons
Thanks
TFS-Snapshot.jpg
ASKER
Thanks Bob.
The point that I still annoys me is -
A release (version 1.0.0) is given to the Test guys . Some minor error is found . Do I need to create a new version just with the correction ? During the couple of days of testing , sometimes similar things can happen 10-15 times ( Is this not enough to checkout and make changes and then checkin ? Do we need to create a new folder by name Version 1.0.x for this ? )
Also, Another point I am not sure is , How multiple people make changes in TFS environment ( If it is disconnected mode) . That is - Programmer1 is working on Page1 and Programmer2 is working on Page2 . How each get a copy work on it and merge later ( Programmer1 may have a release today for testing and Programmer2 have a release tomorrow)
Thanks
The point that I still annoys me is -
A release (version 1.0.0) is given to the Test guys . Some minor error is found . Do I need to create a new version just with the correction ? During the couple of days of testing , sometimes similar things can happen 10-15 times ( Is this not enough to checkout and make changes and then checkin ? Do we need to create a new folder by name Version 1.0.x for this ? )
Also, Another point I am not sure is , How multiple people make changes in TFS environment ( If it is disconnected mode) . That is - Programmer1 is working on Page1 and Programmer2 is working on Page2 . How each get a copy work on it and merge later ( Programmer1 may have a release today for testing and Programmer2 have a release tomorrow)
Thanks
ASKER CERTIFIED SOLUTION
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
1) Structure
ProjectA
Main
Development
Version1.1
Release
Version1.0.0
Version1.0.1
Version1.0.2
ProjectB
Main
Development
Release
2) Main trunk should always build without errors--strive to never break the build.
3) When you need to create a new version or test out a large code change or refactor operation, branch from Main into Development folder with version.
4) Have a few people do merges from development branches into Main trunk, to reduce risk of breaking the build.
5) Do all your work in Team Explorer, or Visual Studio IDE so that TFS is kept in sync. This means don't do any work in Windows Explorer, like renaming folders and files.
6) Make sure file paths are relative, so that when you branch into a different project folder the folders don't have to be changed. Assembly references, and project paths are relative, so you won't need to worry about them.