How should I get rid of TFS Branches properly?

2020-05-17 02:24发布

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.

标签: tfs branch
3条回答
爷的心禁止访问
2楼-- · 2020-05-17 03:11

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.

查看更多
The star\"
3楼-- · 2020-05-17 03:22

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

查看更多
我命由我不由天
4楼-- · 2020-05-17 03:29

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.

查看更多
登录 后发表回答