Improve UI Workflows for Team Explorer, especially Pending Changes (in 2012)
In 2012, all the Team Explorer interfaces have been combined into a single window. This has drastically reduced the efficiency with which we can do day to day operations. For example, to merge, I have to go to the Source Control explorer (Click Team Explorer tab. Click Home. Click Source Control Explorer). Then I apply my merge. Then I have to check in (Click Team Explorer. Click Home. Click Pending Changes. W.A.I.T. Check in the files). Then the next thing needed is always to do a build. (Click Team Explorer. Click Home. Click Builds. Start the build). As you can see, every action I do takes the Team Explorer to another page, losing my previous page, so I now waste a lot of time re-opening pages I was in a few minutes earlier. In 2010 these UI pages were independent so the workflow was fast.
One solution would be to allow multiple instances of the Team Explorer, just as is possible in Solution Explorer.
When merging changesets, I have to pick the target branch every time. Could it please just remember the last target branch? And ideally also grey out branches that are not mapped into my workspace.
Team explorer pages don't remember their settings. Pending Changes and Work Items open with all their sub-trees expanded. If I close ones I don't want to look at, more often than not when I return to the page (2 minutes later) they come back fully expanded.
There is no way to quickly see the status of All Builds any more. I have to open one of my specific builds, then change the filter settings to show all the builds. I need to check the status of our builds many times a day so this is very frustrating.
Pending changes: There is no differentiation between the different sections in this window, so it is **extremely** difficult to find things in it. To check in I have to enter a check in comment at the top, then scroll to the bottom to enter notes, then scroll back to the top to find the check in button - could notes and comments be put together at the top please? In general, this window gets very long and has to be scrolled, so it is terribly hard to find anything. In particular, the Included and Excluded file lists look identical. When you have scrolled down into a long list of files there is no way to tell if you are looking at included or excluded items. A subtle background colour difference (e.g. pastel green and pastel red - or green and red tint to the monochrome icons) would make a massive difference here because I would be easily able to distinguish the sections and tell whether I am looking at included or excluded files. I don't care how awful this window *looks* - what is important is that it enables efficient and easy workflows. Currently it is all about trying to "look metro" with no consideration to usability. In UI design terms it is simply unusable - I actually leave 2012 and run 2010 to go and deal with source control tasks because waiting 20 seconds to boot up 2010 is much faster than achieving the work in 2012. I thought I would get used to the UI but familiarity with it has not made it any easier to use - after several months use in Beta/RC/RTM versions I still find myself "lost" in the Pending changes window. This is probably because I often have pending changes with lists of more than 2 or 3 files (typically 5-30 files, and periodically hundreds or thousands of files)
Pending Changes: There is no way to see a flat list of files. I have 300 projects and a refactoring can mean I change 80 files each of which is in a different folder. The hierarchical list is 3 times as long, and there is no way to see a simple alphabetical list of leafnames to find files. The clunky filtering options are no substitute for simply listing the files easily. 2010 had options to swithc between a flat list or a treeview as appropriate.
Pending Changes: It initially seems useful that checkins occur in the background. However, this means that you move away from the pending changes window to do other work, and do not get any notification when a checkin has failed for any reason. If a checkin is not successful, it needs to show a dialog to tell the user that they need to fix it.
Pending Changes is SLOW. In 2010, whenever you opened the PC window, it instantly showed you the information you needed. Now, every time it opens it re-loads all its data from the server and there is a 6-second delay before it shows the info. Flying in the face of 2012's claims of making the UI 'less distracting', while Pending Chaages is working, it draws a pair of massive animated flashing blue bars across the side of my screen, which is *intensely* distracting and very annoying to have constantly going on in my peripheral vision.
Home: I don't understand why I would need a "New Query" link on the home page. We created the 20 queries useful to our organisation 5 years ago and have not since needed a new one. Do users really create such a profusion of queries every day that they need a link to do this on the primary user interface page? To me it's just a distracting item that I can accidentally click.
The use of hot-links in the web sense (of taking you to a new page) and as "buttons" that apply an action is very confusing. If it is a button that will fold out or hide some additional UI (like "Override warnings" and its corresponding "Cancel") then it should look like a button or a fold-out-this-section glyph. The cancel buttons in particular are really hard to spot so it's a difficult UI to get to grips with.
So, to summarise: Team Explorer and Pending Changes both suffer from cramming too much functionality into a single window. In both cases, becing able to split sub-sections of these UI pages out into separate windows so that I can focus only on and quickly access the information I need. In particular, it must be remembered that Source Control is not something programmers use occasionally, it is a core workflow that is used frequently every day. Shaving a few seconds off this workflow has a huge impact on the usability of the IDE for everyday programming tasks.
I appreciate you've all worked very hard to bring us this new UI, but it's much ****** to use and slower than 2010. Even after many weeks of use I have not "got used to it" - normally I can take on board a UI change in less than a week and then feel comfortable with it, but this metrofication has made it simply awful and too time consuming to use as a serious programming tool - too much "form over function". Until these issues are resolved, I will have to use 2010 to apply my source control, work item and build actions - it's actually faster to boot up a new copy of 2010 from my SSD than it is to switch to the 2012 pending changes window!
Brian K commented
I can't believe that I can't look at my pending changes and also review someone else's shelf set at the same time. The view can only show one or the other and it takes forever to switch between them.
I don't mind the pending changes tree, hopefully we will soon be able to dump files into multiple custom buckets instead of just Included and Excluded, like you can in Perforce, and check in any bucket we wish.
Ibraghim Rugowa commented
yes, new pending changes is not usable.
Russ Leikis commented
I completely disagree with this. The workflow in VS2012 Team Explorer is a huge improvement on the disjointed organization of features in the old tree view. As someone who wears TFS Admin, Dev, and Tester hats, the new experience is a huge win for me. There are rarely any activities where I needed more than one view, and when I do, the forward and back buttons let me switch quickly. Please keep it similar to how it is now.
Even though I have solutions in 2005, 2008, 2010, and 2012, I use VS2012 exclusively for all my Team Explorer activities.
Surya Suluh commented
Amen brother, I had a team of 20+ they're all say the same thing. So it's not just me !
James Greene commented
To all who are voting for this one specifically for the Pending Changes window, please shift your votes to the following topic instead as it has ~10x more votes already:
Nate Hollingsworth commented
Why must I drag and drop work items to associate them to a change set!?!? Why do I have to click a million times to get to the information I want?
Have been using the new interface for 2 hours and I am already pulling my hair out. The new team explorer is just useless the 2010 version was perfect please bring it back!
In the past I had separate apps for: source control, builds, bug tracking. It was easy, you pressed Alt-Tab to switch window, and it was exactly as you left it. Bliss.
Now, Visual Studio has assimilated all of these tools into one window and we have to click like crazy to close down the tool windows we're not using to make space for the ones we want to work on, only to realize we need some information from the previous window... click-click-click to go back and click-click-click to expand the nodes to get the context back we had when last on that tool window.
The Visual Studio developers appear to have forgotten about the multi-tasking capabilities of Windows. There's no rule that says an Integrated Development Environment has to only have one window.
Stanley Goldman commented
I've published an alpha release of my Visual Studio extension 'Team Pilgrim', a replacement for Visual Studio 2012's Team Explorer based on Visual Studio 2010.
I need as much feedback as I can get in order to make this a solid replacement in Visual Studio. Find me on twitter... @stan_programmer
James Greene commented
Totally agree! The Pending Changes window in particular caused me to revert to VS2010 after failing to "get used to it" as well. Ridiculous....
Thanks for the info about shortcuts. But I honestly think they are a bit distracting in the scenarios where you need your other hand on mouse ready to send something to tfs or collapse some subtrees of pending changes.
Ganesh Kumar commented
Oh man - the 2012 pending changes re-design is the most (fill your expletive of the day here****) unusable piece of functionality in my opinion. They took something that worked really well in almost all cases - developer reviewing all changes in one central place, pending changeset review that really helped code reviews, be able to quickly exclude things (check box), flat view of changes etc. So many things worked really well.
With the new approach, a lot of disparate functionality has been crammed into to the same window that don't relate to each other. I really hate the hierarchical view of the pending changes - it may work for teams that deal with 1 or 2 changes but if there are large number of changes spanning multiple projects - its a nightmare.
I could go on and on. It appears that the new interface was designed by a people who have no clue how commercial software development is done and how large teams operate and use Visual Studio. In my mind it is a step backwards - many steps backwards.
Please bring the old interface and workflow back....
You can usw shortcuts to Switch to the different pages in TeamExplorer. Use <Ctrl> - 0 + B to go to builds and <Ctrl> - 0 + W to go to work items and so on. With this it is really fast to use. You can eben usw the shortcuts if TE is Not opened.
I agree with all the comments above. In addition adding work items to pending changes is also a pain now. You can only use queries in "Favorites" or the "My Queries" to check in items, I can no longer browse to a central location that contains my "Team query" that spans all projects it has to first be in either favorites or my queries. In addition if you have them set up in a single location in "My Queries" it takes 6+ clicks to switch to open the project, open the query and select the items...Then you have to drag and drop the work items, it was much easier to have the check boxes and be able to select multiple items.
The ability to swap between projects needs to be a single click/hotkey option not 3 clicks.
Michael Sage commented
I agree with having to go back to VS 2010. The changes to how TFS integration works in VS 2012 is a huge step backwards in my opinion. I tried VS 2012 power tools in hopes that there was something there that might help, but no luck. I am probably going to hold off on having my team go to VS 2012 as long as I can because of this.