tracenvironment
no way to compare when less than two revisions
Differences
This shows you the differences between two versions of the page.
| — | tracenvironment [2015/06/09 19:23] (current) – created - external edit 127.0.0.1 | ||
|---|---|---|---|
| Line 1: | Line 1: | ||
| + | ====== The Trac Environment ====== | ||
| + | |||
| + | Trac uses a directory structure and a database for storing project data. The directory is referred to as the “environment”. | ||
| + | |||
| + | ===== Creating an Environment ===== | ||
| + | |||
| + | A new Trac environment is created using [[: | ||
| + | < | ||
| + | $ trac-admin / | ||
| + | </ | ||
| + | |||
| + | |||
| + | [[: | ||
| + | database connection string (explained below), and the type and path to | ||
| + | your source code repository. | ||
| + | |||
| + | '' | ||
| + | the environment directory and all the files inside. Please remember to set | ||
| + | the appropriate permissions. The same applies to the Subversion repository | ||
| + | Trac is eventually using, although Trac will only require read access as long | ||
| + | as you're not using the BDB file system.'' | ||
| + | |||
| + | ===== Database Connection Strings ===== | ||
| + | |||
| + | Since version 0.9, Trac supports both [[http:// | ||
| + | [[http:// | ||
| + | database backends. | ||
| + | for most projects. The database file is then stored in the environment | ||
| + | directory, and can easily be [[: | ||
| + | rest of the environment. | ||
| + | |||
| + | The connection string for an embedded SQLite database is: | ||
| + | < | ||
| + | sqlite: | ||
| + | </ | ||
| + | |||
| + | |||
| + | If you want to use PostgreSQL or MySQL instead, you'll have to use a | ||
| + | different connection string. For example, to connect to a PostgreSQL | ||
| + | database on the same machine called `trac`, that allows access to the | ||
| + | user `johndoe` with the password `letmein`, use: | ||
| + | < | ||
| + | postgres:// | ||
| + | </ | ||
| + | |||
| + | |||
| + | If PostgreSQL is running on a non-standard port (for example 9342), use: | ||
| + | < | ||
| + | postgres:// | ||
| + | </ | ||
| + | |||
| + | |||
| + | Note that with PostgreSQL you will have to create the database before running | ||
| + | `trac-admin initenv`. | ||
| + | |||
| + | And make sure PostgreSQl DB name is " | ||
| + | And didn't work uppercase trac-user-name | ||
| + | < | ||
| + | sudo su - postgres -c createdb trac | ||
| + | sudo su - postgres -c psql trac | ||
| + | CREATE USER trac-user-name WITH PASSWORD ' | ||
| + | </ | ||
| + | |||
| + | |||
| + | (Just to remind you, if you don't have a sudo/su setup, you just need to do the createdb and psql statements. That threw me the first couple of times I read this.) | ||
| + | |||
| + | ===== Source Code Repository ===== | ||
| + | |||
| + | You'll first have to provide the //type// of your repository (e.g. `svn` for Subversion, | ||
| + | which is the default), then the //path// where the repository is located. | ||
| + | |||
| + | If you don't want to use Trac with a source code repository, simply leave the //path// empty | ||
| + | (the //type// information doesn' | ||
| + | |||
| + | For some systems, it is possible to specify not only the path to the repository, | ||
| + | but also a //scope// within the repository. Trac will then only show information | ||
| + | related to the files and changesets below that scope. The Subversion backend for | ||
| + | Trac supports this; for other types, check the corresponding plugin' | ||
| + | |||
| + | Example of a configuration for a Subversion repository: | ||
| + | < | ||
| + | [[:trac]] | ||
| + | repository_type = svn | ||
| + | repository_dir = / | ||
| + | </ | ||
| + | |||
| + | |||
| + | The configuration for a scoped Subversion repository would be: | ||
| + | < | ||
| + | [[:trac]] | ||
| + | repository_type = svn | ||
| + | repository_dir = / | ||
| + | </ | ||
| + | |||
| + | |||
| + | ===== Directory Structure ===== | ||
| + | |||
| + | An environment directory will usually consist of the following files and directories: | ||
| + | |||
| + | * `README` - Brief description of the environment. | ||
| + | * `VERSION` - Contains the environment version identifier. | ||
| + | * `attachments` - Attachments to wiki pages and tickets are stored here. | ||
| + | * `conf` | ||
| + | * `trac.ini` - Main configuration file. See TracIni. | ||
| + | * `db` | ||
| + | * `trac.db` - The SQLite database (if you're using SQLite). | ||
| + | * `plugins` - Environment-specific [[: | ||
| + | * `templates` - Custom environment-specific templates. | ||
| + | * `site_css.cs` - Custom CSS rules. | ||
| + | * `site_footer.cs` - Custom page footer. | ||
| + | * `site_header.cs` - Custom page header. | ||
| + | * `wiki-macros` - Environment-specific [[: | ||
| + | |||
| + | ''' | ||
| + | It happens that the above structure is loosely modelled after the Subversion repository directory | ||
| + | structure, but they are not and //must not// be located at the same place.''' | ||
| + | |||
| + | ---- | ||
| + | See also: TracAdmin, TracBackup, TracIni, TracGuide | ||
| + | |||
tracenvironment.txt · Last modified: by 127.0.0.1
