Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people, just like you, are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
Solved

TFS 2010: Delete project within Team Project (permanently)

Posted on 2010-11-19
10
2,155 Views
Last Modified: 2012-05-10
Hi

How do I delete a project within my Team project, permanently. If dlete the project it will be marked as deleted in source control, but I want to remove it completely.

I don't wan't to delete the hole Team Project, just a project inside my solution.

I found this, dont know if this is the only way?  is there any UI for doing this?

I want to delete the project WindowsFormApplication1.

tf destroy $/[TeamProjectName]/WindowsFormApplication1 /preview /startcleanup /login:[Name],[pass] /collection:http://[server-name}:8080/tfs/DefaultCollection



0
Comment
Question by:AWestEng
  • 6
  • 3
10 Comments
 
LVL 28

Assisted Solution

by:strickdd
strickdd earned 50 total points
ID: 34175666
unfortunately, there is no GUI for doing this. You will have to use the command line for doing this.
0
 
LVL 23

Expert Comment

by:Admin3k
ID: 34178422
when you are ready to run the command , don't forget to drop the /preview parameter, this just simulates the action & does nothing else .
0
 
LVL 1

Author Comment

by:AWestEng
ID: 34179325
is there any C# code for doing the same as ts, I'm writing my own UI to delete stuff from TFS
0
Announcing the Most Valuable Experts of 2016

MVEs are more concerned with the satisfaction of those they help than with the considerable points they can earn. They are the types of people you feel privileged to call colleagues. Join us in honoring this amazing group of Experts.

 
LVL 1

Author Comment

by:AWestEng
ID: 34180272
This what I have now.

I have tried to run this code on ProjectCollections that I thought was already completely deleted, but apparently not.  but not according  RegisteredTfsConnections.GetProjectCollections();

But then the method  (teamProjectCollection.EnsureAuthenticated();) throws an exception that I dont have the authorization to connect to this collection

using (TfsTeamProjectCollection teamProjectCollection = new TfsTeamProjectCollection(
                    new Uri(String.Format("{0}/{1}", this.server, projectCollectionName)), 
                    new NetworkCredential(String.Format("{0}\\{1}", this.domianName, this.username), this.password)))
                {
                   
                    teamProjectCollection.EnsureAuthenticated();

                    TeamProjectDeleter projectDeleter = new TeamProjectDeleter(teamProjectCollection, projectCollectionName, true);
                    
                    projectDeleter.StatusEvent += new TeamProjectDeleter.StatusEventHandler(this.StatusUpdate);
                    projectDeleter.ExcludeWss = false;
                    projectDeleter.Delete();
                }

Open in new window

0
 
LVL 23

Expert Comment

by:Admin3k
ID: 34190016
I am not sure why would you want to reinvent the wheel here, Project collections , team projects are deletable from the TFS admin console out of the box , also the tf destroy command does work to permanently delete objects under source control.

However with regards to the error you encounter in your code, Please look into Impersonation samples in the SDK , you will need to impersonate first before TFS identifies you and allows you to perform any source control operations.
0
 
LVL 1

Author Comment

by:AWestEng
ID: 34190757
But I can only see solutions or project collections, I can't see projects inside a solution uisng the TFS Admin, I can only delete them fron the Solution Explorer, and  if you do that it wont be permanently deleteed. that is when you will use the tf destory command, that is what I'm trying to do here, but with a GUI instead of using cmd
0
 
LVL 1

Author Comment

by:AWestEng
ID: 34190801
and the TFs admin don't take away the sharepoint  sites when deleting a collections,

so I like to have a GUI that will take away.
Site
Collection
dB
and all other things that is connected to a Project collection

and also want to list all the deleted projects, so I can excute a destroy command on them, If I neeed to clean up abit. :)

you know what I mean..
0
 
LVL 1

Author Comment

by:AWestEng
ID: 34190806
but I will check out the SDK., thx man :)
0
 
LVL 23

Accepted Solution

by:
Admin3k earned 450 total points
ID: 34191909
in order to sum your points .

You can completely delete a TEAM project and all its contents (sharepoint site , Source control items, documents, Work items ,etc...) using  two ways with TFS 2010
1- TFSDELETEPROJECT command
2- Team Foundation Administrator Console.

You can also delete a Team project collection in two ways.
1- TFSConfig Collection /delete command
2- Team Foundation Administrator console

The tf destroy command in your initial post does not destroy anything of the above mentioned items except items that are under source control which are usually source code files & folders, it deletes them beyond recovery.

This is why I think this option is not available through the GUI,and can only be done from command line,  in order to regulate using it , and making sure the person who does it is aware of what he is doing since it is irreversible.

Imagine someone accidentally clicking on a destroy command in a visual studio menu for an important project that is used by an entire team, you will only have SQL backups to get to , the level of success in restoring the database depends on how good your backup plan is, and the amount of data added to your TFS databases on a daily basis.

the whole idea of a source control system is to keep History of the code and keep track of changes, so chances are destroying code permanently is not a very popular command.

such commands should be used with care & awareness (Especially in production environments) ,The TFS administrators should know them, but they are not what I would call daily activities.

Finally you can communicate with TFS Programmatically if you need to , Microsoft calls this Extending Team Foundation .
 
Download the Team Foundation Server 2010 SDK & go through the documentation to learn of the APIs you can use , check code samples for the most common activities to familiarize yourself with what you can use this for.

Hope this helps.




0
 
LVL 1

Author Comment

by:AWestEng
ID: 34192269
thx man
0

Featured Post

Free Tool: ZipGrep

ZipGrep is a utility that can list and search zip (.war, .ear, .jar, etc) archives for text patterns, without the need to extract the archive's contents.

One of a set of tools we're offering as a way to say thank you for being a part of the community.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Extention Methods in C# 3.0 by Ivo Stoykov C# 3.0 offers extension methods. They allow extending existing classes without changing the class's source code or relying on inheritance. These are static methods invoked as instance method. This…
This article aims to explain the working of CircularLogArchiver. This tool was designed to solve the buildup of log file in cases where systems do not support circular logging or where circular logging is not enabled
This video shows how to use Hyena, from SystemTools Software, to bulk import 100 user accounts from an external text file. View in 1080p for best video quality.

809 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question