Edgewall Software

Changes between Version 7 and Version 8 of 0.12/TracRepositoryAdmin


Ignore:
Timestamp:
Feb 3, 2010, 12:44:31 PM (14 years ago)
Author:
Remy Blank
Comment:

Added "readable" heading anchors.

Legend:

Unmodified
Added
Removed
Modified
  • 0.12/TracRepositoryAdmin

    v7 v8  
    22[[PageOutline(2-3)]]
    33
    4 == Quick start ==
     4== Quick start == #QuickStart
    55
    66 * Manage repositories in the "Repository" admin panel, with `trac-admin` or in the `[repositories]` section of [wiki:TracIni#repositories-section trac.ini].
     
    99
    1010
    11 == Specifying repositories ==
     11== Specifying repositories == #Repositories
    1212Starting with 0.12, Trac can handle more than one repository per environment. The pre-0.12 way of specifying the repository with the `repository_dir` and `repository_type` options in the `[trac]` section of [wiki:TracIni trac.ini] is still supported, but two new mechanisms allow including additional repositories into an environment.
    1313
     
    3636
    3737
    38 === In `trac.ini` ===
     38=== In `trac.ini` === #ReposTracIni
    3939Repositories and repository attributes can be specified in the `[repositories]` section of [wiki:TracIni#repositories-section trac.ini]. Every attribute consists of a key structured as `{name}.{attribute}` and the corresponding value separated with an equal sign (`=`). The name of the default repository is empty.
    4040
     
    5858Note that `name.alias = target` makes `name` an alias for the `target` repo, not the other way around.
    5959
    60 === In the database ===
     60=== In the database === #ReposDatabase
    6161Repositories can also be specified in the database, using either the "Repositories" admin panel under "Version Control", or the `trac-admin $ENV repository` commands.
    6262
     
    8080
    8181
    82 == Repository synchronization
     82== Repository synchronization == #Synchronization
    8383Prior to 0.12, Trac synchronized its cache with the repository on every request. This approach is not practical anymore with multiple repositories. For this reason, explicit synchronization through post-commit hooks was added. This also provides new functionality in the form of a repository listener extension point that is called when a changeset is added or modified, and can be used by plugins to perform actions on commit.
    8484
    85 === Explicit synchronization ===
     85=== Explicit synchronization === #ExplicitSync
    8686This is the preferred method of repository synchronization. It requires setting the `[trac]  repository_sync_per_request` option in [wiki:TracIni#trac-section trac.ini] to an empty value, and adding a call to `trac-admin` in the post-commit hook of each repository. Additionally, if a repository allows changing revision metadata, a call to `trac-admin` must be added to the post-revprop-change hook as well.
    8787
     
    120120See the [http://svnbook.red-bean.com/en/1.5/svn.reposadmin.create.html#svn.reposadmin.create.hooks section about hooks] in the Subversion book for more information. Other repository types will require different hook setups. Please see the plugin documentation for specific instructions.
    121121
    122 === Per-request synchronization ===
     122=== Per-request synchronization === #PerRequestSync
    123123If the post-commit hooks are not available, the environment can be set up for per-request synchronization. In that case, the `[trac] repository_sync_per_request` option in [wiki:TracIni#trac-section trac.ini] must be set to a comma-separated list of repository names to be synchronized.
    124124
     
    126126
    127127
    128 == Migration from a single-repository setup ==
     128== Migration from a single-repository setup == #Migration
    129129The following procedure illustrates a typical migration from a single-repository setup to multiple repositories.
    130130