we started working with development- and featurebranches and it is 开发者_如何学编程actually quite useful. But, as we do most of the bug fixes in development branches it often happens, that I work on several things at a time, waiting for them to be reviewed by our QA. Now I fear that I will forget to merge a changeset/revision back into trunk after I get clearance and so a bugfix actually doesn't find its way into trunk.
Is there a way to show the changesets from one branch that haven't been merged back to another branch (trunk) yet?
Thanks.
- Right-click on your working copy of the trunk
- Choose "merge" from the TSVN context menu
- in the merge wizard, chose "range of revision"
- for the url, enter the url of your branch
- click the "show log" button
- in the log dialog, check the checkbox "include merged revisions".
Now, that log dialog (started from the merge dialog) will show you all revisions that have already been merged from the branch into trunk in gray and with an additional icon. All revisions that are shown black were not merged yet from the branch into trunk.
A very basic approach is to use
svn log --verbose
on your feature as well as your development branch. If necessary you can limit the query to specified revision:
svn log --verbose -r r1:r2
The following link about svn changesets might be interesting for you as well.
Adding on to Stefan's answer. There is now a checkbox on the log dialog called [ ] Hide non-mergeable revisions. If you check that box, you will only see revisions which you have not yet merged.
So again after you right click and select Merge..., [Show Log], and at the bottom of the log window check [ ] Hide non-mergeable revisions.
Additionally, you can further filter your list by adding some filters at the top of the dialog. You can also add a filter -John to exclude changes made by John. The minus sign indicates a search string to exclude from the list. Or if you want to be sure to exclude changes that belong to change TM1245 you can add the filter -TM1245
We spun a service that uses the mergeinfo metadata to create a webpage that displays this information. So we now setup our "merge paths" in a configuration file (including to trunk) and this service looks for outstanding revisions that have not been merged along the merge paths.
It is VERY useful.
精彩评论