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.

  • Best way to maintain a Git fork
  • Sharing files across branches in Git
  • How to handle an invalid execution state?
  • Lcov: can not collect branch coverage statistics
  • Separate clones, or separate branches
  • Which way to merge with git?
  • Entity Framework Merge Nightmare
  • Should I merge master into a branch, and then merge back into master?
  • is my branch tracking to master?
  • How do you search for a branch in SourceTree
  • How to only merge changes added after a certain revision (both ways)?
  • Is there a simple solution for importing different branches of software into a new git repository?
  • 3 Solutions collect form web for “How should I get rid of TFS Branches properly?”

    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.

    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.

    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

    Git Baby is a git and github fan, let's start git clone.