7 | | == The Different Ways of Preparing a Diff == |
8 | | |
9 | | === Examining Differences Between Revisions === |
10 | | |
11 | | A very frequent need is to look at changes made on a file |
12 | | or on a directory spanning multiple revisions. |
13 | | In the TracLog view, one can select the '''old''' and the '''new''' |
14 | | revision of the path being examined, and then select the '''Diff''' |
15 | | operation. |
16 | | |
17 | | === Examining Arbitrary Differences === |
18 | | |
19 | | One of the main feature of source configuration management |
20 | | systems is the possibility to work simultaneously on alternate |
21 | | ''Lines of Developments'', or ''branches''. |
22 | | The evolution of branches are often made in parallel, making it |
23 | | sometimes difficult to understand the exact set of differences |
24 | | between alternative versions. |
25 | | |
26 | | This is where Trac comes to the rescue: |
27 | | the '''Diff ...''' button in the TracBrowser |
28 | | leads to a form permitting the selection of arbitrary |
29 | | ''Base'' and ''Target'' path/revision pairs. |
30 | | |
31 | | The resulting set of differences consist in the changes |
32 | | that should be applied on the ''Base'' in order |
33 | | to make it look like the ''Target'' of the Diff. |
34 | | |
35 | | For convenience, it is possible to invert the roles |
36 | | for the '''old''' and the '''new''' path/revision pairs |
37 | | by clicking the ''Reverse Diff'' link on the diff page. |
38 | | |
39 | | === Checking the Last Changes === |
40 | | |
41 | | The last possibility for looking at changes is |
42 | | to have a quick look on the ''Last Changes'' while |
43 | | browsing a file or a directory. |
44 | | |
45 | | This shows the relevant TracChangeset information, but |
46 | | restricted to the path being browsed, and with a link |
47 | | to the ''Previous Changes'' immediately preceeding the |
48 | | one being viewed, making it convenient to |
49 | | look at the history of the changes for a given path. |
50 | | |
51 | | Of course, if one is doing that on the root of the |
52 | | repository, there will be no path restriction |
53 | | and the full changeset will be shown. |
54 | | |
55 | | |
56 | | == Looking at the Differences == |
57 | | |
58 | | ''See TracChangeset for now, as the display of the |
59 | | differences is identical to what is described there. |
60 | | Actually, the TracChangeset is now a particular case |
61 | | of TracDiff.'' |
62 | | |
63 | | Note however that the Changeset information is only displayed |
64 | | when it makes sense, i.e. when there's only one changeset involved |
65 | | in the difference being examined. |
66 | | |
67 | | |
68 | | == Feedback == |
69 | | |
70 | | |
71 | | ''Please feel free to test, as the feature set won't change much now, and add your observations here'' |
| 8 | There are a few new features, that are all documented in more |
| 9 | depth in TracChangeset and in TracRevisionLog: |
| 10 | * Examining differences between revisions for a given path in the repository |
| 11 | * Examining arbitrary differences between arbitrary pairs of (path,rev). |
| 12 | The only constraint being that those (path,rev) exist and are of the |
| 13 | same type (e.g. compare two directories or two files). |
| 14 | * Navigation to the previous or next change of any given path in the repository |