37 | | * The ''inline'' style shows the changed regions of a file underneath eachother. A region removed from the file will be colored red, an added region will be colored green. If a region was modified, the old version is displayed above the new version. Line numbers on the left side indicate the exact position of the change in both the old and the new version of the file. |
38 | | * The ''side-by-side'' style shows the old version of the left and the new version on the right (this will typically require more screen width than the inline style.) Added and removed regions will be colored in the same way as with the inline style (green and red, respectively), but modified regions will have a yellow background. |
| 43 | * The ''inline'' style shows the changed regions of a file underneath each other. A region removed from the file will be colored red, an added region will be colored green. If a region was modified, the old version is displayed above the new version. Line numbers on the left side indicate the exact position of the change in both the old and the new version of the file. |
| 44 | * The ''side-by-side'' style shows the old version on the left and the new version on the right (this will typically require more screen width than the inline style.) Added and removed regions will be colored in the same way as with the inline style (green and red, respectively), but modified regions will have a yellow background. |
| 50 | |
| 51 | |
| 52 | == The Different Ways to Get a Diff == |
| 53 | |
| 54 | === Examining a Changeset === |
| 55 | |
| 56 | When viewing a repository check-in, such as when following a |
| 57 | changeset [wiki:TracLinks link] or a changeset event in the |
| 58 | [wiki:TracTimeline timeline], Trac will display the exact changes |
| 59 | made by the check-in. |
| 60 | |
| 61 | There will be also navigation links to the ''Previous Changeset'' |
| 62 | to and ''Next Changeset''. |
| 63 | |
| 64 | |
| 65 | '''Note: all of the following will only be available in Trac [milestone:0.10]''' |
| 66 | |
| 67 | === Examining Differences Between Revisions === |
| 68 | |
| 69 | A very frequent need is to look at changes made on a file |
| 70 | or on a directory spanning multiple revisions. |
| 71 | The easiest way to get there is from the TracRevisionLog, |
| 72 | where one can select the '''old''' and the '''new''' revisions |
| 73 | of the path being examined, and then click the ''View changes'' |
| 74 | button. |
| 75 | |
| 76 | === Examining Arbitrary Differences === |
| 77 | |
| 78 | One of the main feature of source configuration management |
| 79 | systems is the possibility to work simultaneously on alternate |
| 80 | ''Lines of Developments'', or ''branches''. |
| 81 | The evolution of branches are often made in parallel, making it |
| 82 | sometimes difficult to understand the exact set of differences |
| 83 | between alternative versions. |
| 84 | |
| 85 | This is where Trac comes to the rescue: |
| 86 | the '''View changes ...''' button in the TracBrowser |
| 87 | leads to a form permitting the selection of arbitrary |
| 88 | ''From:'' and ''To:'' path/revision pairs. |
| 89 | |
| 90 | The resulting set of differences consist in the changes |
| 91 | that should be applied to the ''From:'' content in order |
| 92 | to make it look like the ''To:'' content. |
| 93 | |
| 94 | For convenience, it is possible to invert the roles |
| 95 | of the '''old''' and the '''new''' path/revision pairs |
| 96 | by clicking the ''Reverse Diff'' link on the changeset page. |
| 97 | |
| 98 | === Checking the Last Change === |
| 99 | |
| 100 | The last possibility for looking at changes is |
| 101 | to have a quick look on the ''Last Change'' while |
| 102 | browsing a file or a directory. |
| 103 | |
| 104 | This shows the last change that happened on that path. |
| 105 | The links ''Previous Changeset'' and ''Next Changeset'' |
| 106 | are replace by links to ''Previous Change'' and ''Next Change'', |
| 107 | which makes it really convenient to traverse the change history |
| 108 | of a specific file or directory. |
| 109 | This view of a changeset, restricted to a specific path, |
| 110 | is called ''restricted changeset''. |
| 111 | |
| 112 | Of course, if one is doing that on the root of the |
| 113 | repository, there will be no path restriction |
| 114 | and the full changeset will be shown. |
| 115 | |