|  | 1 | = The Trac Repository Browser = | 
          
            |  | 2 | [[TracGuideToc]] | 
          
            |  | 3 |  | 
          
            |  | 4 | The Trac repository browser can be used to browse specific revisions of directories | 
          
            |  | 5 | and files stored in the repositories associated with the Trac environment. | 
          
            |  | 6 |  | 
          
            |  | 7 | ''(since 0.12)'': | 
          
            |  | 8 | At the top-level of the repository browser is the '''Repository Index''', | 
          
            |  | 9 | listing all the configured repositories. | 
          
            |  | 10 | Each repository has a name which is used as a path prefix in a | 
          
            |  | 11 | "virtual" file hierarchy encompassing all the available repositories. | 
          
            |  | 12 | One of the repositories can be configured with an empty name; this is the default repository.  When such a default repository is present, its top-level files and directories | 
          
            |  | 13 | are also listed, in a '''Default Repository''' section placed before the | 
          
            |  | 14 | repository index. If the default repository is the only repository associated | 
          
            |  | 15 | with the Trac environment the '''Repository Index''' will be omitted ^[#note-multirepos (1)]^. | 
          
            |  | 16 |  | 
          
            |  | 17 | Directory entries are displayed in a list with sortable columns. The list | 
          
            |  | 18 | entries can be sorted by ''Name'', ''Size'', ''Age'' or ''Author'' by clicking on the column | 
          
            |  | 19 | headers. The sort order can be reversed by clicking on a given column | 
          
            |  | 20 | header again. | 
          
            |  | 21 |  | 
          
            |  | 22 | The browser can be used to navigate through the directory structure | 
          
            |  | 23 | by clicking on the directory names. | 
          
            |  | 24 | Clicking on a file name will show the contents of the file. | 
          
            |  | 25 | Clicking on the revision number of a file or directory will take | 
          
            |  | 26 | you to the TracRevisionLog for that file. | 
          
            |  | 27 | Note that there's also a ''Revision Log'' navigation link that will do the | 
          
            |  | 28 | same for the path currently being examined. | 
          
            |  | 29 | Clicking on the ''diff'' icon after revision number will display the changes made | 
          
            |  | 30 | to the files modified in that revision. | 
          
            |  | 31 | Clicking on the ''Age'' of the file - will take you to that changeset in the timeline. | 
          
            |  | 32 |  | 
          
            |  | 33 | It's also possible to browse directories or files as they were in history, | 
          
            |  | 34 | at any given repository revision. The default behavior is to display the | 
          
            |  | 35 | latest revision but another revision number can easily be selected using | 
          
            |  | 36 | the ''View revision'' input field at the top of the page. | 
          
            |  | 37 |  | 
          
            |  | 38 | The color bar next to the ''Age'' column gives a visual indication of the age | 
          
            |  | 39 | of the last change to a file or directory, following the convention that | 
          
            |  | 40 | '''[[span(style=color:#88f,blue)]]''' is oldest and '''[[span(style=color:#f88,red)]]''' | 
          
            |  | 41 | is newest, but this can be [TracIni#browser-section configured]. | 
          
            |  | 42 |  | 
          
            |  | 43 | At the top of the browser page, there's a ''Visit'' drop-down menu which you can use | 
          
            |  | 44 | to select some interesting places in the repository, for example branches or tags. | 
          
            |  | 45 | This is sometimes referred to as the ''browser quickjump'' facility. | 
          
            |  | 46 | The precise meaning and content of this menu depends on your repository backend. | 
          
            |  | 47 | For Subversion, this list contains by default the top-level trunk directory | 
          
            |  | 48 | and sub-directories of the top-level branches and tags directories | 
          
            |  | 49 | (`/trunk`, `/branches/*`, and `/tags/*`).  This can be [TracIni#svn-section configured] | 
          
            |  | 50 | for more advanced cases. | 
          
            |  | 51 |  | 
          
            |  | 52 | If you're using a Javascript enabled browser, you'll be able to expand and | 
          
            |  | 53 | collapse directories in-place by clicking on the arrow head at the right side of a | 
          
            |  | 54 | directory. Alternatively, the [trac:TracKeys keyboard] can also be used for this: | 
          
            |  | 55 | - use `'j'` and `'k'` to select the next or previous entry, starting with the first | 
          
            |  | 56 | - `'o'` (open) to toggle between expanded and collapsed state of the selected | 
          
            |  | 57 | directory or for visiting the selected file | 
          
            |  | 58 | - `'v'` (view, visit) and `'<Enter>'`, same as above | 
          
            |  | 59 | - `'r'` can be used to force the reload of an already expanded directory | 
          
            |  | 60 | - `'A'` can be used to directly visit a file in annotate (blame) mode | 
          
            |  | 61 | - `'L'` to view the log for the selected entry | 
          
            |  | 62 | If no row has been selected using `'j'` or `'k'` these keys will operate on the entry under the mouse. | 
          
            |  | 63 |  | 
          
            |  | 64 | {{{#!comment | 
          
            |  | 65 | MMM: I guess that some keys are upper case and some lower to avoid conflicts with browser defined keys. | 
          
            |  | 66 | I find for example in Firefox and IE on windows that 'a' works as well as 'A' but 'l' does not work for 'L'. | 
          
            |  | 67 | cboos: 'l' is reserved for Vim like behavior, see #7867 | 
          
            |  | 68 | }}} | 
          
            |  | 69 |  | 
          
            |  | 70 | For the Subversion backend, some advanced additional features are available: | 
          
            |  | 71 | - The `svn:needs-lock` property will be displayed | 
          
            |  | 72 | - Support for the `svn:mergeinfo` property showing the merged and eligible information | 
          
            |  | 73 | - Support for browsing the `svn:externals` property | 
          
            |  | 74 | (which can be [TracIni#svn:externals-section configured]) | 
          
            |  | 75 | - The `svn:mime-type` property is used to select the syntax highlighter for rendering | 
          
            |  | 76 | the file. For example, setting `svn:mime-type` to `text/html` will ensure the file is | 
          
            |  | 77 | highlighted as HTML, regardless of the file extension. It also allows selecting the character | 
          
            |  | 78 | encoding used in the file content. For example, if the file content is encoded in UTF-8, | 
          
            |  | 79 | set `svn:mime-type` to `text/html;charset=utf-8`. The `charset=` specification overrides the | 
          
            |  | 80 | default encoding defined in the `default_charset` option of the `[trac]` section | 
          
            |  | 81 | of [TracIni#trac-section trac.ini]. | 
          
            |  | 82 | {{{#!comment | 
          
            |  | 83 | MMM: I found this section a bit hard to understand. I changed the first item as I understood that well. | 
          
            |  | 84 | but I think the other items could be changed also | 
          
            |  | 85 | cboos: in the meantime, I've added the ''advanced'' word as a hint this can be a bit complex... | 
          
            |  | 86 | }}} | 
          
            |  | 87 |  | 
          
            |  | 88 |  | 
          
            |  | 89 | ---- | 
          
            |  | 90 | {{{#!div style="font-size:85%" | 
          
            |  | 91 | [=#note-multirepos (1)] -  This means that after upgrading a single-repository Trac of version | 
          
            |  | 92 | 0.11 (or below) to a multi-repository Trac (0.12), the repository browser will look and feel | 
          
            |  | 93 | the same, that single repository becoming automatically the "default" repository. | 
          
            |  | 94 | }}} | 
          
            |  | 95 |  | 
          
            |  | 96 | See also: TracGuide, TracChangeset, TracFineGrainedPermissions |