How does manual backup/restore of TFS server work? - tfs

I setup TFS 2013 Express on my dev PC.
The only backup method that I can do is a manual backup.
These are the steps that I did:
I backed up the TFS Team Project DB and the TFS Configuration DB.
I added a comment to my code and checked it in.
I restored the backup db's from step one using TFSRestore.exe
I deleted the source code from my PC and did a get latest.
I noticed that my comment from step 2 was still present.
When I restore a TFS database shouldn't I loose the changes that were made after the given backup?
EDIT:
I ran a second test and this time I made sure:
I still had the same results.

When you backup database, make sure you have stopped the team project collection.
Also, before restore, try to delete existing database that will restore.

Related

How to get code files from TFS databases backup

I have backup of TFS databases and I want to get my code files from it. Is it possible? If so, then what exactly do I need to do? TFS Version: 11.0.61030.0 (Tfs2012.Update4)
Whatever investigation I have done so far, it seems that the only way to restore the files is to install TFS 2012 on another machine, restore the database backups on that machine. And hopefully afterwards I should be able to download the files from this new TFS. I wanted to verify my procedure because I need to know if there is something missing in my understanding before I start the task.
Yes restore is the way to go, but you must be careful at some important details. I write as I remember:
Use the same version of TFS for the new environment.
The new environment is in the same Active Directory domain. If you are in a workgroup, must add additional steps to make, at least some, accounts match.
Restore from a marked transaction (this is done by the built-in backup/restore tool)
You will have two live system with the same identifier: this may confuse clients. To avoid run the tfsconfig ChangeServerID command.
If you restore the Configuration DB, must run TfsConfig RegisterDB.
For getting code this is enough, but consider that the new environment is still pointing to existing resources: build server, lab management.
If the TFS instance was already used, more steps are necessaries, like cleaning cache on AT.
I do not remeber a complete guidance: there are many variations on this topic. Make sure to study the content of Restore a deployment to new hardware

Upgrading TFS 2010 to new machine with a different name - What happens client side?

I have the following TFS upgrade scenario: I'd like to change my current TFS 2010 environment to TFS 2012 - this by moving the 2010 server to a new machine with another computer name.
Therefore I simply use the backups of the TFS 2010 databases from the old server and restore them on the new server. Before starting the backup I will turn off several TFS specific services on the old machine to avoid check-ins from devs. In the meantime the developers are working in offline mode. Afterwards I'm going to upgrade the databases.
Now it's getting interesting: The TFS 2012 is up and running with the upgraded project collections and everything works smoothly, but what happens to the local workspaces which are linked to the old TFS url? Is it possible that the developers can switch their exisiting workspaces with their pending changes to the new TFS 2012 url?
If yes, how can I do that? I've already did a test installation and upgraded to 2012 successfully, but I can't find out how to bind my existing workspaces with my pending changes to the new TFS. Initially I thought that the "Change Source Control" dialog could do the trick, but everything I'm able to click in the toolbar are the "Bind/Unbind" and "Refresh" buttons...
If no, I guess I have 2 options:
All I can do is forcing everyone to check-in/shelve and create a new mapping for the new server
OR
simply keeping the old TFS name/url? (Are the pending changes still available in this case?)
Thank you in advance!
P
Workspaces are stored on the server, so when the users add the new server they should find their old workspace already setup for them. Complete with all their existing checkouts etc.
If this doesn't work for a user, they can map a new workspace to the same directory, checkout all files in the tree, then use the tfs power tools do to a uncheckout unchanged (tpft uu /noget) to only leave their changed files checked out.

TFS 2010 Backup and restoration proceedure

Following are the scenario in my environment
I have a tfs 2010 server which is running fine and i have schedule the backup for WSS_AdminContent,WSS_Config, Tfs_Warehouse,Tfs_Configuration. and one project which is created in tfs. Now i want to restore this TFS 2010 in my test environment.
I am in need of how do i proceed for the same and how can i restore my production environment in test environment.SO that if my production server is down i will be able to restore all projects in TFS 2010.
Thanks and Regards
Avinash Udawant
System Admin.
You'll also need to backup other databases, including project collection databases and more. Follow the MSDN guidance in order to make sure you get all the steps right for backing up and restoring TFS.

What's a Backup and Recovery Process for Team Foundation Server 2010?

We have a new installation of TFS 2010 (on SQL Server 2008), and I'm planning the backup and recovery process.
It seems the configuration information and data is stored in the Tfs_Configuration and Tfs_DefaultCollection databases (and additional Tfs_[CollectionName] dbs if you have more than one collection). In a test setup, I tried backing up the two dbs, uninstalling TFS, then reinstalling (thinking I could then hook the databases up at some point in the install process). This is where I'm confused. I don't see an option or clear guidance on how this is suppose to work.
If you have backed up your TFS 2010 databases and lose your TFS server, you can restore it by restoring all of your TFS databases, reinstalling TFS, and selecting the Application Tier option of the installation wizard. Once you point the wizard at your database, it will recognize the Tfs_Configuration database from the previous installation and restore your previous configuration as well as your collections.
Download the TFS Power tools and use the backup tool (it's even got a nice GUI)!
There seems to be a MSDN section on this topic: http://msdn.microsoft.com/en-us/library/bb552295.aspx

TFS: Moving a Team Project from one server to another?

is there a (simple) way to move a single TeamProject from one server to another? Including source code, work items, documents, project site...
We don't want to move our server from one machine to another. Just a single project from server A to server B.
You have two options
You can use the TFS to TFS migration tool: Click Here. This doesn't include the WSS project site.
Or you can backup your TFS db and restore on a new TFS instance, then use the TFSDeleteProject.exe tool to remove the projects you don't want.
The latter option is the easiest, but will not merge the backed up projects with any existing projects on the target instance. Existing projects will be lost. WSS sites can also be moved in this manner as well. See How to: Back Up a Team Foundation Server
The TFS to TFS migration tool is obsolete. The features you are looking for is part of TFS Integration Platform.
Goto http://tfsintegration.codeplex.com/ for more info.
In TFS 2010 you can detach the Project Collection database using the TFS Admin Console and then re-attach it to another TFS Server.
http://msdn.microsoft.com/en-us/library/dd936138.aspx
If you want an entire Project Collection to be moved from one TFS server to another:
1) Detach the collection via Admin Console.
2) Backup the Tfs_SomethingCollection database using SSMS, then restore it to the other database server.
3) On the second TFS Admin Console, attach the project collection. It will show up as an available collection to attach just because it has been restored in the second sql server instance.
I did not migrate the Tfs_Configuration database. In my case I was not utilizing reporting services, build services, or sharepoint.
I hadn't installed the second TFS server and was wondering, what options to choose when installing, and if you should install it after or before restoring the migrated DB(it doesn't really matter): Install TFS on the second machine. If TFS and its database instance will be on seperate servers, then choose Advanced configuration and specify the name of the DB server instance. When you have an opportunity to create a DefaultCollection, then opt to skip that step. The install will create a new Tfs_Configuration DB on the new server. Then follow the above steps to migrate the collection DB to the new DB server instance and attach it.
Programmers will need to add the new server to Team Explorer, and hit Change Source Control... twice in a row for each solution. Make sure the local path mappings are correct, and then Bind each solution/project.

Resources