How do I associate a review request with multiple changesets in TFS 2012

13,842

Solution 1

  1. Unsolicited, no.
  2. You can rightclick a changset in the history screen to request a review post checkin.

And there is a nasty workaround to get what you want to achieve. Check out all files you want to review and request a review. You can then undo your checkout, the shelveset and the review request will remain.

Alternatively you can just go to the source control tab and do a checkout-all on the rootfolder of your solution, request the review, undo your checkout and do the review.

As for linking changesets to a Work Item, this can be done post checkin. Open the work item, go to the links tab and click "Link to..." The dropdown there will have a "Changeset" option. But I don't think this link type is enabled for Code Review Requests, since these use a Shelveset and not a set of changesets as the source for the code to review.

enter image description here

I expect you could use the TFS API to generate a shelveset with all the changes from a specific developer in a given timerange, put these on a shelveset and request a review on that. But no existing feature to do that exists.

Or you might be able to edit the shelveset of associated to the review by creating a new one with the same name.

Solution 2

An alternative approach:

1) at the beginning of the two week cycle, initiate the code review process and note the work item number that is created. Simply request a review from yourself with no code changes at first.

2) Have all your developers associate their check ins for the next 2 weeks with that work item #

3) When you are ready to perform the review, simply open the work item and go through the changesets.

That should accomplish what you want.

Solution 3

Option #3

[I'm assuming here that the changesets that your are trying to associate to a single code review are consecutive, for example 20001:20010]

  1. I "roll[ed] back to a specific changeset" (in my example above 20001). I check it in the changes. The code is now in its original state.

  2. Then, I "roll[ed] back to a specific changeset" (in my example above 20010) and check it in again. The code is now in its final state.

  3. Finally, I request a review on the latest revision. This review compares the latest two commits - the ones I created from the rollback.

As a bonus you can compare specific changesets in the history page. You can use this compare to make sure that the commits above did in fact revert the code to revision 20001 and 20010.

Share:
13,842
Doug
Author by

Doug

Updated on June 21, 2022

Comments

  • Doug
    Doug almost 2 years

    Our development process works like this: Every 2 weeks the team lead (me) goes in and reviews everyone's changesets to make sure they are up to the coding standards. I would like to use TFS 2012 to help automate this process.

    There are 2 problems with this:

    1. There is no way to submit an unsolicited code review. I can live without this if necessary, I guess

    2. There is no way to associate a code review with more than one changeset. This is a deal-breaker

    I read one article which said it's possible to link changesets to a work item after the fact and when I open the work item for the request review I do see the Links tab. However, when I click "New" or "Link to...", there is no option to link to a changeset. There is only an option to link to each work item type in the process.

    Does anybody know how to do this? Are there any plans to add these features to TFS?

    Here's a screenshot:

    No changeset option to be found... :(

  • Doug
    Doug over 11 years
    1. Dang. 2. I like your suggestion about checking out the entire tree, but unfortunately it doesn't work. Tfs complains that it has a limit of 2000 files per review request. We have close to 7000. :(
  • Doug
    Doug over 11 years
    I feel like Microsoft just doesn't want me to use this feature... :(
  • jessehouwing
    jessehouwing over 9 years
    In the tool it doesn't work that way, since you can't request a review for a workitem. A feedback request is associated to a Changeset or a shelfset.
  • Andrew Clear
    Andrew Clear over 9 years
    Right, but you can request a review of a dummy changeset/shelveset (just a space of whatever), associate that review request with a work item which will create the link, and then continue to associate changesets with the review request work item number right?
  • jessehouwing
    jessehouwing over 9 years
    You can associate the changesets to the same work item, but that will not associate them to the actual Code Review and the changes won't be shown in the Visual Studio UI.
  • Erusso87
    Erusso87 over 8 years
    If I do it the way you suggested, the reviewer will not see what has changed in the files and doesn't know what changes he has to review.
  • jessehouwing
    jessehouwing over 8 years
    @bitbonk they can always do a compare to previous version. Or to latest to see what to review.
  • Erusso87
    Erusso87 over 8 years
    @jessehouwing I guess I have to write down all the changeset numbers that the reviewer is supposed to compare each file to (as a comment for each file right into the request), which is far from ideal.
  • jessehouwing
    jessehouwing over 8 years
    Just tell them which base changeset to compare to.