Adding Files to a Review from Visual Studio
(This blog entry is part of a series of entries describing some of the new features in Code Collaborator v6.0. The series content is listed in this entry.)
For a long time now our code review tool, Code Collaborator, has provided an Eclipse plug-in. A key feature of Code
Collaborator v6.0 is support for Visual Studio.
In the Visual Studio world, extensions to the IDE are called "add-ins" instead of plug-ins, but the idea is the same. Our Visual Studio add-in has actually been available for several weeks now as a Technology Preview, but with the release of the v6.0 beta, we're promoting it to "beta" as well. :-)
To use it, you'll need to first install the regular Code Collaborator client. Then download and run this additional .msi file. More details here.
Access to the functionality is easy. In the Solution Explorer, choose a file and then right-click:
There are two entries: Review changelists and Review changes.
I'll start with the second one: Review changes adds locally modified files to an existing code review or you can instead have it create a brand new review. Of the 16 version control systems that are directly supported by Code Collaborator, the Visual Studio add-in can be used to add locally-modified files to a review from 10 of them:
- MKS Source Integrity
- Team Foundation Server
The Review changelists option, on the other hand, adds one or more changelists to an existing or new review. We're using the generic term "changelist" because our Visual Studio add-in can be used with a variety of different version control systems, each of which has its own term for the concept of a list of modified files.
Of the 16 version control systems that are directly supported by Code Collaborator, the Visual Studio add-in can be used to add a changelist from 8 of them. They are listed below, along with the term that each uses for a "changelist."
- ClearCase - UCM activity
- CMVC - Track
- MKS Source Integrity - Change package
- Perforce - Changelist
- Rational Synergy - Task
- Subversion - Revision
- Surround - Changelist
- Team Foundation Server - Shelveset and Changeset
So with Subversion, you would specify a revision number; with Team Foundation Server you could specify a shelveset name or a changeset id, etc.
This all leads to a question: how does the add-in know which Code Collaborator server to upload to? Just as importantly, how does it know which version control system to access?
As mentioned above,
you have to have the regular Code Collaborator client installed in order for the Code Collaborator Visual Studio add-in to work - the install program for the client prompts you for the name
of the server, your user name, and your password. You can then use the command line client to specify your version control system.
Longer term we want to enhance the add-in. Some ideas include:
- Add a window that shows your Code Collaborator Action Items
- Remember the ten most recent changelist values that have been typed in and display them in a dropdown combobox
- Integrate with the Visual Studio add-ins of some of the version control systems. For example, it would be nice to right-click a shelveset in Team Foundation Server and see a context menu entry that says: Add to Review
I can think of more, but what really matters is: what do you think? We know there are folks out there who have wanted this feature - for quite a while its entry has had the most votes on our user feedback forum (although lately it has been running neck-and-neck with another v6.0 feature: adding ClearCase file versions to a review via our client GUI). If you have ideas, please leave a comment here or feel free to add an entry to our feedback forum.