Renaming TFS2010 Team Project - tfs

Is it possible to rename a TFS2010 team project?
The project in question is based on the CMMI 5.0 team project template, but it has been modified with several custom modifications (new WITs and link types).
For a rename to be feasible, all history must be maintained.

In all: No, it can't be done.
Your only shot is to create a new Team Project named as you 'd like and then move everything to it. This involves serious work done by hand.
After that, you can't erase your old TeamProject - you will loose the history. You can lock it and make it unavailable to everybody.
After having done this a few times we think about the names of our Team Projects a lot. If at some point their name is(gets) wrong, I 'd say we 'll live with the mismatch.

Unfortunately, team projects in TFS are not able to be renamed in TFS 2005, TFS 2008, or TFS 2010. It's currently the #1 feature on the Visual Studio User Voice site for TFS. If this is something that's important, I'd recommend putting some votes on that feature: http://visualstudio.uservoice.com/forums/121579-visual-studio/suggestions/2037605-rename-project-in-tfs

As far as I know you can create a new TeamProject and move your sources while maintaining history. Not sure if work items are preserved even when you delete/destroy the original TeamProject though.

As per the other comments "No, you can't", when we do it here we create a new project and then migrate source and work items over using the TFS Integration Platform, then delete the original project

Related

Can a TFS Product Backlog Item be moved to a new project?

I have a PBI in TFS under ProjectA with an iteration and area value filled in. Is it possible to move this PBI to ProjectB without creating a new PBI?
I am not seeing a way in the Visual Studio UI to do this. If I try to manually type in the area path of ProjectB, Visual Studio says that the path cannot be found.
I am using Team Foundation Server 2013 and Visual Studio Ultimate 2013.
No. Work items cannot be moved between team projects.
The reason is simple: The process template of the team project defines the work items. Team projects can have different templates. What if you tried to move a work item from a team project using a Scrum template to one using a CMMI template?
I would go a little deeper and say that if you need this feature then you should not have two Team Projects in the first place.
http://nakedalm.com/one-team-project/
The term that I use is:
"If you have artifacts that interact, with artifacts defined as people, code, or work items, then they should be in a single Team Project"
http://nakedalm.com/creating-nested-teams-visual-studio-alm/
Using a single Team Project can give you many more capabilities at the backlog/ work tracking perspective. Like the nested teams described above.
EDIT: This does not work for TFS2017 and forwards.
Yes, see http://www.codeproject.com/Tips/1018002/Yes-You-Can-Move-TFS-WorkItems-Between-Projects for a downloadable utility, source and a more detailed explaination.
It is a backdoor, SQL Manager approach, not supported by Microsoft, but it works for me. Here is the SQL:
UPDATE [Tfs_xxx].[dbo].[WorkItemsAre] SET AreaID=#AreaID,IterationID=#IterationID WHERE ID=#WorkItemID
UPDATE [Tfs_xxx].[dbo].[WorkItemsLatest] SET AreaID=#AreaID,IterationID=#IterationID WHERE ID=#WorkItemID
UPDATE [Tfs_xxx].[dbo].[WorkItemsWere] SET AreaID=#AreaID,IterationID=#IterationID WHERE ID=#WorkItemID
With the Tfs_xxx being replaced with Tfs_<your collection database name>.
Essentially, the project is inherited from the Area and the Iteration. Changing these from the current project to the target project causes the workitem to "move" to the target project. Additional rough edges are that the assignment pool or the workflow states might not align and have to be edited mannually in the UI to get the workitem back in the flow of the target project.
See my related answer.
Though not applicable to TFS on-premise, one can now do this with Azure Boards in Azure DevOps.

TFS 2010 team project Migration

Is there any way to move/migrate team projects of a Team project collection from one TFS server to another (both in TFS 2010 version). The destination Team Project collection contains a Team Project already and I want to move the source Team projects in to this particular team projects. So at the end I will have a Team Project which contains several projects in it. Is that possible? I want the history to be preserved as well.
If the above scenario is not possible, can I migrate Team projects from one server to another without going through the database backup-restore-TFS detach-attach process?
I thought of trying the TFSIntegration tool, but could see many people advised to avoid using this due to issues in it.
So if you have any information in accomplishing this, that would be great..
If you want all the history then you really only have 2 options:
TFS Integration platform - http://tfsintegration.codeplex.com/
Back up /restore the collection database - http://msdn.microsoft.com/en-us/library/dd936138.aspx#Backup
I would recommend moving the database. This sounds pretty onerous but is actually quite easy.
Good Luck!
TFS INTEGRATION PLATFORM used for integration.
A tool which helps a lot named "witAdminUi".

TFS 2010 - Create a new project from an existing one in TFS

I need to create a new project from an existing one in TFS. This is for source control only. I do not need to copy any work items.
so now i need to create NewTeamProject in NewProjectCollection and use the source branch of OldTeamProject in OldProjectCollection.
Kindly advise to go ahead with this.. Thanks a lot for your help in advance..
Manual Split
Create a new team project in your existing collection
Pick the branch from team project option in the creation wizard
Follow the split a team project collection guidance
However, I have a feeling that this will not bring all the history along with it, and it's not a particularly nice option, especially when it comes to the collection splitting.
TFS Integration Tools
Another way is to use the tfs integration platform, which basically replays all the checkins on a new team project, which can be in your new collection. You will lose the original date/time of the checkin, due to the way this program works but will still be able to see what each checkin changed.
TFS Integration Tools
Tfs integration tools blog posts and references
There is one risky way to get your timestamps correct, by manually updating the database

Moving a Team Project from one Collection to another

is there a (simple) way to move a single TeamProject from one collection to another (in one server) in TFS 2010? Including source code, work items, documents, project site...
No not really simple, you can split a collection and creata a new collection with the team projects you move in it, but you cannot out-of-the-box merge a team project into an existing collection.
What you can do is to use the TFS integration platform http://visualstudiogallery.msdn.microsoft.com/eb77e739-c98c-4e36-9ead-fa115b27fefe or http://tfsintegration.codeplex.com to migrate your team project over to the new collection. This is however a DataMigration that doesnt keep or even move all data, but it will move Source Code & Workitems. Moving a team project site (if needed) , including documents can be done by using the STSADM Export and Import commands, please refer to http://technet.microsoft.com/en-us/library/cc288191%28v=office.12%29.aspx for more info about moving SharePoint sites
No there isn't.
But it is a requested feature: http://visualstudio.uservoice.com/forums/121579-visual-studio/suggestions/2037613-make-it-possible-to-move-a-team-project-between-te
It is not easy, but it is doable: Split a Team Project Collection
Yes there is a feature request, but I don't think it will be shipped in the box, so the other option to use TFS Integration Platform
There is a way to move from one collection to another using git-tfs and git-tf tools, it is a kind of workaround, but works if this is really required to be done.
This is posted step-by-step here:
https://fabiostawinski.wordpress.com/2017/03/22/tfvc-to-git-to-tfvc-is-it-possible/
In VS 2013 - map both collections to some folders, and then "Move" command will be available:

Merging team projects

In our current project we have four different TFS2010 Team Projects in the same Team Project Collection. The reason for this is that different parts of the project wanted to use different team project templates (CMMI vs Agile).
All projects now use the same template. Therefore we have now reached the conclusion that it would be better to merge the projects into a single team project. This raises several questions:
Is it possible / feasible to use one of the existing projects as the target project for the other three?
How do we move our existing work items into the new project whilst maintaining our area tree? We hope to create one root area for each of our existing team projects, and move all work items / areas underneath this root node.
Today we have work item links from one team projects into another - how do we keep these links when merging?
What is the best practice when moving the source code? One clear approach is to simply copy it to the new location, and locking and keeping the old team projects in case we need to access older versions of the code. But is it feasible to use branching for this, e.g. branching all existing code to the new team project? What kind of problems might this approach cause?
Thanks for your help!
Unfortunately, TFS 2010 doesn't allow you to merge team projects.
Stucturing Team Projects and Team Project Collections is one of the most important strategy decisions to make before starting to use TFS. Unfortunately, a lot of the customers we help don't make the up-front planning necessary and don't understand some of the limitations in TFS around merging, moving, splitting, etc. team projects before they start diving in to using TFS :(
When we have consulting engagements where customers want to consolidate their team projects, we end up having to do a lot of manual work to migrate the artifacts. We have built some tools to help us with this process for work items but for the most part it's a lot of tedious consulting work. The migration utilities always end up needing to be customized for each customer as well since they usually have different business rules for how they want to migrate.
Ultimately, a "migration" doesn't end up bringing over all of the information and you end up with some other problems like date/time stamps being different from what they were originally. (I have heard it referred to as a time compression issue with migrations.)
Some additional thoughts for each of your original questions:
Sure, you could theoretically use one of the existing team projects as the target for the migration of the other three. As long as you like the team project name and don't want to rename the team project. :)
This is where we have built custom work item migration utilities to assist our consulting customers. You would likely need to do the same.
This is possible as well with a custom work item migration utility. You can just keep track of the mappings between old work item IDs and new work item IDs and then add the links later once all of the new work items are created in the target team project.
That's ultimately up to you. I would do a "move" version control operation on the source code from the old team project to the new team project. This maintains everything. However, I would not delete any of the old team projects because that will cause the version control history to be destroyed as well.
It's not the best story for you but hopefully it will help your planning out some!

Resources