Team Explorer Everywhere - A Plug-in to access TFS from Eclipse
Posted by: Subodh Sohoni
in Category VSTS & TFS
Abstract: Team Explorer Everywhere is an Eclipse plug-in that is being provided by Microsoft with the Visual Studio 2010. The purpose of this plug-in is to provide access to Team Foundation Server 2010 from Eclipse which is one of the most popular IDEs for Java development.
“Team Explorer Everywhere” is an Eclipse plug-in that is being provided by Microsoft with the Visual Studio 2010. The purpose of this plug-in is to provide access to Team Foundation Server 2010 from Eclipse which is one of the most popular IDEs for Java development. In this way now the projects that are being developed using Java technology can also leverage the benefits like integrated services for workitem tracking, source control, build management, reporting and portal for the team collaboration. Team Foundation Server is providing these integrated services to Microsoft based projects since 2005 and an Eclipse plug-in named Teamprise was developed by an independent organization for making those services available in Eclipse. Team Explorer Everywhere is a new avatar of Teamprise under the banner of Microsoft. Although I am an amateur programmer in Java using Eclipse, I had not used any of the services offered by TFS through Teamprise. I decided to explore the Team Explorer Everywhere and know more about how it can be used as well as how it compares with regular Team Explorer.
I started with installation of Team Explorer Everywhere (TEE). I had an installation of Eclipse existing on my laptop machine since last year and I decided to use that only to do further exploration. I downloaded the latest TEE installable in the .zip format from Microsoft site. As usual I had a Java perspective open in Eclipse and I decide to install TEE from the downloaded .zip file from Help -> Install New Software. I browsed to the .zip file and the package of the plug-in was immediately recognized. It took about 15 minutes to install the entire software.
Next step was to open the TEE so I opened the Window to choose perspectives and chose other from the list.
In the other perspectives, I chose the Team Foundation Server Exploring perspective.
Visibly nothing changed so I select from the Window menu “Show View” and chose other. Now in the list I could see Team Foundation Server and when I expanded that I could see Team Explorer and chose that. Did I have to select Team Foundation Server Exploring perspective before the view? I was not so sure but in further exploration I realized that had I not opened that perspective then Team Explorer would have opened horizontally at the bottom in the Java perspective instead of at the left.
Now the Team Explore as is in the regular version opened. It showed the familiar icon to deal with TFS and also very clearly told that it is not connected [to TFS].
Instinctively I clicked that icon to connect to TFS. As expected, it opened the dialogue to connect to TFS. The dialogue box looked different than regular but the information that it required was same.
I gave the full URL (http://VS2010:8080/tfs) but later on I also tried with just the name of the server and that too worked. So now I was shown the regular selector of Team Project Collection and Team Projects within that.
I selected a Team Project of my choice and clicked Next. The subsequent screen was unexpected. It showed me the name of the machine on which I was working with other column for Name which I assumed was the Default Workspace name for SCM. That is my assumption and may not be correct.
After I clicked on the Finish button the regular looking Team Explorer opened with the selected Team Project and its folders.
What I did also observe that there is no way to create a new Team Project from this Team Explorer. If I right click on the name of the collection then the only option that I can see is to add an existing team project. Same is the option when the button on the top is clicked.
Now I started exploration of Work Items node. When I expanded that, the familiar sub-nodes related to queries appeared. I expanded the Team Queries node and executed a query. It opened in the right side pane. It was a Tree of Workitems type of query and I felt a just a little disappointed to see that although the Parent and Children were in proper order and the children tasks were a little indented, the expand – collapse functionality that is available in the results view of regular TE was missing.
I executed the Workitems and Direct Links type of query and found similar results.
Now I tried to create a new query and the query editor is quite as rich as the regular TE.
There were options to create all the three types of queries and the columns had the similar rich functionality. Button to run the query was little inconspicuous (shown in red circle in the above figure). That I felt should have been with a little more prominence and I had to search for it before I got it. The queries of the types Work Items and Direct Links as well as Tree of Work Items provided familiar editors
Now I concentrated my focus on creating new work item. Intuitive right click on the Work Items node gave the option to create new workitem. I chose to create a new Review. The form was familiar but did not fit in the right side pane. I use a wide screen laptop machine and I expected to see the entire form of the work item on the screen. I needed to scroll on the right to view the details on the right side. Particularly inconvenient were the buttons to add Links and Attachments since they are moved from top to right side. It would have been nice if the form could be shown in entirety with size adaptable to window size.
The dialogue box to link other work items and artefacts is as expected.
There is no separate button for saving the work items that is created or edited. I had to use the common save button.
Now I moved to the Document Node. All the sub-nodes are present. When any document or a page is clicked it opens in another application or browser. Although the node for Excel report was present, it was empty.
Moving on to Reports section, I found all the reports from process template. I double clicked on a report and it opened in the right side pane.
Now I reached the important section of source control. Double click on the node name opened the Source Control Explorer kind of interface.
My next target was to create a new Java project and add it to source control under TFS. I shifted back to Java perspective and created a new Java project. Next task was to add it to source control under TFS. There did not seem any intuitive way to do it. I remembered that when the team project was added, I had created a default workspace. Now I needed to map the folder where my existing Java project resided. I went back to Team Foundation Server Exploring perspective. After a lot of unnecessary activities finally I created a folder under the team project source control root. Right click on it gave any option to ‘Set Working Folder’ which seemed to be somewhat similar to Map Folder in regular TE. A click on that justified my hunch and the mapping dialogue was shown. I browsed to the folder that contained my Java project and selected that. Nothing seemed to happen. Then I again right clicked on that folder in the source control explorer and selected “Add Items to Folder” and selected the same Java project folder. Still nothing seemed to happen but when I did Check-in Pending Changes then the whole java project was checked in and added into the source control explorer. Maybe there is a shorter path to do the same thing but this did work for me. Now I could check-out, get latest, get specific version of the Java files in my project.
So far our exploration of Team Explorer Everywhere has taken us deeper in the woods and now we have reached the deepest part where there is a cave named Build. It is mentioned that TFS integrates with Ant and Maven. I am going to explore that in this week. It requires a brave heart for someone who has never written an Ant script to explore that (have done some amateurish customization of MSBuild scripts but nothing serious in that too.). If I don’t post on those things in a week, assume that I was consumed by Ants.