Changes between Version 7 and Version 8 of 0.12/TracRepositoryAdmin
- Timestamp:
- Feb 3, 2010, 12:44:31 PM (14 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
0.12/TracRepositoryAdmin
v7 v8 2 2 [[PageOutline(2-3)]] 3 3 4 == Quick start == 4 == Quick start == #QuickStart 5 5 6 6 * Manage repositories in the "Repository" admin panel, with `trac-admin` or in the `[repositories]` section of [wiki:TracIni#repositories-section trac.ini]. … … 9 9 10 10 11 == Specifying repositories == 11 == Specifying repositories == #Repositories 12 12 Starting 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. 13 13 … … 36 36 37 37 38 === In `trac.ini` === 38 === In `trac.ini` === #ReposTracIni 39 39 Repositories 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. 40 40 … … 58 58 Note that `name.alias = target` makes `name` an alias for the `target` repo, not the other way around. 59 59 60 === In the database === 60 === In the database === #ReposDatabase 61 61 Repositories can also be specified in the database, using either the "Repositories" admin panel under "Version Control", or the `trac-admin $ENV repository` commands. 62 62 … … 80 80 81 81 82 == Repository synchronization 82 == Repository synchronization == #Synchronization 83 83 Prior 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. 84 84 85 === Explicit synchronization === 85 === Explicit synchronization === #ExplicitSync 86 86 This 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. 87 87 … … 120 120 See 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. 121 121 122 === Per-request synchronization === 122 === Per-request synchronization === #PerRequestSync 123 123 If 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. 124 124 … … 126 126 127 127 128 == Migration from a single-repository setup == 128 == Migration from a single-repository setup == #Migration 129 129 The following procedure illustrates a typical migration from a single-repository setup to multiple repositories. 130 130