Fadeproof
Fadeproof

Reputation: 3058

How should I get rid of TFS Branches properly?

I am wondering how I should properly get rid of branches that no longer have any purpose. Right now even if i delete them and commit they are still listed as branches in the properties windows for a particular branching root (directory). If I select merge I don't get an option to merge to the deleted branch which obviously is as expected but therefore I am puzzled about the branch still showing up in the properties window.

Any explanation on this behavior would be greatly appreciated.

Upvotes: 34

Views: 16779

Answers (3)

Damien Ryan
Damien Ryan

Reputation: 1591

The deleted branch is only marked as deleted at a moment in time and it's possible to still get to the code if you sync to a changeset or time before that delete operation.

If you do not want to have the file in the branch in the database at all you can use the tf destroy command line:

http://msdn.microsoft.com/en-us/library/bb386005.aspx

As your branch is already deleted you'll need to use tf dir /deleted to find the deletion number of that branch in order to destroy the files.

Upvotes: 14

manoj sharma
manoj sharma

Reputation: 11

Please use following method to destroy branch in your TFS Project you should have permission to delete branch - you should be a part of project collection admin. Open Visual Studio Command prompt with admin previlage. cd C:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE> tf destroy $/MyProject/Main/Bin /collection:http://servername:8080/tfs/myproject

Upvotes: 1

Mike Q
Mike Q

Reputation: 211

I had a situation where a branch had been deleted and there was no purpose for it to stick around. I couldn't get tf destroy to work until I found out the deletion number of the directory like Damien mentioned. I couldn't get that ID with tf properties since there was no local copy and no server copy based on the error messages.

I was able to get the full TFS path by using:

tf dir $/MyPathTo/TheParent/Directory /deleted

Then I found the postfixed ";Ident" to the directory and could issue:

tf destroy $/MyPathTo/TheParent/Directory/TheDirectoryToGetRidOff;Ident

Damien your answer helped me out - thanks. I thought I'd include the syntax that got me through it to go along with your post.

Upvotes: 21

Related Questions