Srl tools: DcutHelper | TicketList
DcutHelper
This document may not be in its final location. It is here to facilitate quick bringup of this tool.
rough instructions..
This example shows how to merge all changes from icu/trunk since it was branched out to icu/branches/maint/maint-3-8
- determine what the revision of the branch point is from edit logs or from inspection.
- http://bugs.icu-project.org/trac/browser/icu/branches/maint says that maint-3-8 as of this writing was copied from r22550
- with trac, go to the trunk dir of the project to merge FROM. In this case, http://bugs.icu-project.org/trac/browser/icu/trunk
- Do not enter the branch in either the from OR the to. You are not comparing against the branch. You are comparing two revisions of the trunk.
- click View Changes. You will see the diffs between the two revisions.
- Change the from revision to the branch point, in this case 22550. Note that it is the revision that was copied from, not the revision of the branch commit.
- The to revision will default to being HEAD. You can change it. In our example, it was 22577
- on the top right corner, if you are logged in, you will see DCUT Helper. Click it.
- The DCUT Helper has three main sections, followed by the normal diff view. They are not well distinguished. Note that all of the ticket and r links are clickable, and also hovering over the r or the ticket links will show additional information.
- The Tickets section shows which trac tickets are contained within the area to be merged from.
- tickets are all selected by default, but may be de-selected.
- the revisions used for the ticket, and the files within, are shown
- The Revision section shows which revisions, in order, are relevant to these tickets
- Normally, each revision will be merged in wholesale. However, if a revision affects more files than you would like to change, click the checkbox.
- the checkbox near each revision is normally off but may be turned on to cause expansion of the merge commands
- when a checkbox is expanded, the command for each modification to each file in that revision is shown separately, and may be edited out before execution.
- The Command section shows the commands which may be executed in, for example, icu/branches/maint/maint-3-8 to bring it from r22550 to the head revision 22577.
- If the radio button is left on diff (preview) then the commands emitted do not actually merge, but just show differences.
- In preview mode, if a file would be added or deleted, an invalid svn command this_would_add or this_would_delete is used. Executing these lines will simply cause an error.
- The Tickets section shows which trac tickets are contained within the area to be merged from.
- To actually cause the merge to happen
- click the merge radio button near the commands.
- copy the commands from the commands form
- edit the commands as desired
- in, for example, icu/branches/maint/maint-3-8, execute the commands
- when satisfied with the merge, it can be committed. Please use a commit message that describes where the merge was from, such as, icu/trunk r22550:22577 in this case.