VirtualBox

TracAdmin

Trac 配备了一个功能强大的命令行配置工具。此工具可用于配置和自定义您的 Trac 安装,以更好地满足您的需求。

某些配置也可以通过 Web 管理模块执行。

用法

对于几乎所有 trac-admin 命令,第一个参数必须是 TracEnvironment 的路径。

$ trac-admin /path/to/projenv wiki list

唯一的例外是 help 命令,但即使在这种情况下,如果您省略环境,您也只会得到一个非常简洁的命令列表(helpinitenv),这与单独调用 trac-admin 时获得的列表相同。trac-admin --version 将告诉您程序对应的 Trac 版本(例如 1.2)。

要获取可用命令和子命令的完整列表,请指定环境的路径

$ trac-admin /path/to/projenv help

某些命令有更详细的帮助信息,您可以通过将命令名称指定为 help 的子命令来访问

$ trac-admin /path/to/projenv help <command>

trac-admin 命令发生错误时,返回值为 2,并且错误消息会打印到 stderr

trac-admin <targetdir> initenv

此子命令非常重要,因为它用于在指定的 <targetdir> 中创建 TracEnvironment。该目录在调用之前不得存在。

initenv [<projectname> <db>]

    Create and initialize a new environment

    If no arguments are given, then the required parameters are requested
    interactively unless the optional argument `--config` is specified.

    One or more optional arguments --inherit=PATH can be used to specify the
    "[inherit] file" option at environment creation time, so that only the
    options not already specified in one of the global configuration files are
    written to the conf/trac.ini file of the newly created environment.
    Relative paths are resolved relative to the "conf" directory of the new
    environment.

    The optional argument --config=PATH can be used to specify a configuration
    file that is used to populate the environment configuration. The arguments
    <projectname>, <db> and any other arguments passed in the invocation are
    optional, but if specified will override values in the configuration file.

它支持 --inherit 选项,该选项指定一个全局配置文件,用于在多个环境之间共享设置。您也可以在之后通过在新创建的环境中的 conf/trac.ini 文件中设置 [inherit] file 选项来继承共享配置。在环境创建时指定继承配置文件的优点是,只有全局配置文件中指定的选项才会写入到环境的 conf/trac.ini 文件中。请参阅 TracIni#GlobalConfiguration

交互模式

当环境路径是唯一参数时,trac-admin 会进入交互模式。然后,可以在选定的环境上使用提示符执行命令,当 Python readline 模块可用时,提示符会提供 Tab 键补全功能。它还提供自动重复上次发出命令的功能。

readline 模块应在所有兼容 Unix 的平台上可用。对于 Windows,可以通过安装 pyreadline 来获得支持。

进入交互模式后,您还可以获取特定命令或命令子集的帮助

例如,要获取 resync 命令的解释,请运行

$ help resync

要获取所有与 Wiki 相关的命令的帮助,请运行

$ help wiki

完整命令参考

您将在下面找到 trac-admin 中所有默认可用命令的详细帮助。请注意,这可能与 trac-admin <yourenv> help 给出的列表不符,因为该环境中禁用的组件所对应的命令将不可用,反之,环境中激活的某些插件可能会添加自己的命令。

help 

    Show documentation

initenv [<projectname> <db>]

    Create and initialize a new environment

    If no arguments are given, then the required parameters are requested
    interactively unless the optional argument `--config` is specified.

    One or more optional arguments --inherit=PATH can be used to specify the
    "[inherit] file" option at environment creation time, so that only the
    options not already specified in one of the global configuration files are
    written to the conf/trac.ini file of the newly created environment.
    Relative paths are resolved relative to the "conf" directory of the new
    environment.

    The optional argument --config=PATH can be used to specify a configuration
    file that is used to populate the environment configuration. The arguments
    <projectname>, <db> and any other arguments passed in the invocation are
    optional, but if specified will override values in the configuration file.

attachment add <realm:id> <path> [author] [description]

    Attach a file to a resource

    The resource is identified by its realm and identifier. The attachment will
    be named according to the base name of the file.

attachment export <realm:id> <name> [destination]

    Export an attachment from a resource to file or stdout

    The resource is identified by its realm and identifier. If no destination
    is specified, the attachment is output to stdout.

attachment list <realm:id>

    List attachments of a resource

    The resource is identified by its realm and identifier.

attachment move <realm:id> <name> <new_realm:new_id> <new_name>

    Rename or move an attachment to another resource

    The resource is identified by its realm and identifier.

attachment remove <realm:id> <name>

    Remove an attachment from a resource

    The resource is identified by its realm and identifier.

changeset added <repos> <rev> [rev] [...]

    Notify trac about changesets added to a repository

    This command should be called from a post-commit hook. It will trigger a
    cache update and notify components about the addition.

changeset modified <repos> <rev> [rev] [...]

    Notify trac about changesets modified in a repository

    This command should be called from a post-revprop hook after revision
    properties like the commit message, author or date have been changed. It
    will trigger a cache update for the given revisions and notify components
    about the change.

component add <name> [owner]

    Add component

component chown <name> <owner>

    Change component owner

component list 

    Show components

component remove <name>

    Remove component

component rename <name> <newname>

    Rename component

config get <section> <option>

    Get the value of the given option in "trac.ini"

config remove <section> [<option>]

    Remove the specified option or section from "trac.ini"

config set <section> <option> <value>

    Set the value for the given option in "trac.ini"

convert_db <dburi> [new_env]

    Convert database

    Converts the database backend in the environment in which the command is
    run (in-place), or in a new copy of the environment. For an in-place
    conversion, the data is copied to the database specified in <dburi> and the
    [trac] database setting is changed to point to the new database. The new
    database must be empty, which for an SQLite database means the file should
    not exist. The data in the existing database is left unmodified.

    For a database conversion in a new copy of the environment, the environment
    in which the command is executed is copied and the [trac] database setting
    is changed in the new environment. The existing environment is left
    unmodified.

    Be sure to create a backup (see `hotcopy`) before converting the database,
    particularly when doing an in-place conversion.

deploy <directory>

    Extract static resources from Trac and all plugins

hotcopy <backupdir> [--no-database]

    Make a hot backup copy of an environment

    The database is backed up to the 'db' directory of the destination, unless
    the --no-database option is specified.

milestone add <name> [due]

    Add milestone

milestone completed <name> <completed>

    Set milestone complete date

    The <completed> date must be specified in the "MM/dd/YYYY hh:mm:ss a" or
    "YYYY-MM-DDThh:mm:ss±hh:mm" (ISO 8601) format. Alternatively, "now" can be
    used to set the completion date to the current time. To remove the
    completion date from a milestone, specify an empty string ("").

milestone due <name> <due>

    Set milestone due date

    The <due> date must be specified in the "MM/dd/YYYY hh:mm:ss a" or "YYYY-
    MM-DDThh:mm:ss±hh:mm" (ISO 8601) format. Alternatively, "now" can be used
    to set the due date to the current time. To remove the due date from a
    milestone, specify an empty string ("").

milestone list 

    Show milestones

milestone remove <name>

    Remove milestone

milestone rename <name> <newname>

    Rename milestone

permission add <user> <action> [action] [...]

    Add a new permission rule

permission export [file]

    Export permission rules to a file or stdout as CSV

permission import [file]

    Import permission rules from a file or stdin as CSV

permission list [user]

    List permission rules

permission remove <user> <action> [action] [...]

    Remove a permission rule

priority add <value>

    Add a priority value option

priority change <value> <newvalue>

    Change a priority value

priority list 

    Show possible ticket priorities

priority order <value> up|down

    Move a priority value up or down in the list

priority remove <value>

    Remove a priority value

repository add <repos> <dir> [type]

    Add a source repository

repository alias <name> <target>

    Create an alias for a repository

repository list 

    List source repositories

repository remove <repos>

    Remove a source repository

repository resync <repos> [rev]

    Re-synchronize trac with repositories

    When [rev] is specified, only that revision is synchronized. Otherwise, the
    complete revision history is synchronized. Note that this operation can
    take a long time to complete. If synchronization gets interrupted, it can
    be resumed later using the `sync` command.

    <repos> must be the repository name, not the repository path. Use `list` to
    see a list of repository names and associated paths. To synchronize all
    repositories, specify "*" for <repos>. The default repository can be
    specified using "(default)".

repository set <repos> <key> <value>

    Set an attribute of a repository

    The following keys are supported: alias, description, dir, hidden, name,
    sync_per_request, type, url

repository sync <repos> [rev]

    Resume synchronization of repositories

    It works like `resync`, except that it doesn't clear the already
    synchronized changesets, so it's a better way to resume an interrupted
    `resync`.

    See `resync` help for detailed usage.

resolution add <value>

    Add a resolution value option

resolution change <value> <newvalue>

    Change a resolution value

resolution list 

    Show possible ticket resolutions

resolution order <value> up|down

    Move a resolution value up or down in the list

resolution remove <value>

    Remove a resolution value

session add <sid[:0|1]> [name] [email]

    Create a session for the given sid

    Populates the name and email attributes for the given session. Adding a
    suffix ':0' to the sid makes the session unauthenticated, and a suffix ':1'
    makes it authenticated (the default if no suffix is specified).

session delete <sid[:0|1]> [...]

    Delete the session of the specified sid

    An sid suffix ':0' operates on an unauthenticated session with the given
    sid, and a suffix ':1' on an authenticated session (the default).
    Specifying the sid 'anonymous' will delete all anonymous sessions.

session list [sid[:0|1]] [...]

    List the name and email for the given sids

    Specifying the sid 'anonymous' lists all unauthenticated sessions, and
    'authenticated' all authenticated sessions. '*' lists all sessions, and is
    the default if no sids are given.

    An sid suffix ':0' operates on an unauthenticated session with the given
    sid, and a suffix ':1' on an authenticated session (the default).

session purge <age>

    Purge anonymous sessions older than given age or date

    Age may be specified as a relative time like "90 days ago", or as a date in
    the "MM/dd/YYYY hh:mm:ss a" or "YYYY-MM-DDThh:mm:ss±hh:mm" (ISO 8601)
    format.

session set <name|email|default_handler> <sid[:0|1]> <value>

    Set the name or email attribute of the given sid

    An sid suffix ':0' operates on an unauthenticated session with the given
    sid, and a suffix ':1' on an authenticated session (the default).

severity add <value>

    Add a severity value option

severity change <value> <newvalue>

    Change a severity value

severity list 

    Show possible ticket severities

severity order <value> up|down

    Move a severity value up or down in the list

severity remove <value>

    Remove a severity value

ticket remove <ticket#>

    Remove ticket

ticket remove_comment <ticket#> <comment#>

    Remove ticket comment

ticket_type add <value>

    Add a ticket type

ticket_type change <value> <newvalue>

    Change a ticket type

ticket_type list 

    Show possible ticket types

ticket_type order <value> up|down

    Move a ticket type up or down in the list

ticket_type remove <value>

    Remove a ticket type

upgrade [--no-backup]

    Upgrade database to current version

    The database is backed up to the directory specified by [trac] backup_dir
    (the default is 'db'), unless the --no-backup option is specified. The
    shorthand alias -b can also be used to specify --no-backup.

version add <name> [time]

    Add version

version list 

    Show versions

version remove <name>

    Remove version

version rename <name> <newname>

    Rename version

version time <name> <time>

    Set version date

    The <time> must be specified in the "MM/dd/YYYY hh:mm:ss a" or "YYYY-MM-
    DDThh:mm:ss±hh:mm" (ISO 8601) format. Alternatively, "now" can be used to
    set the version date to the current time. To remove the date from a
    version, specify an empty string ("").

wiki dump <directory> [page] [...]

    Export wiki pages to files named by title

    Individual wiki page names can be specified after the directory. A name
    ending with a * means that all wiki pages starting with that prefix should
    be dumped. If no name is specified, all wiki pages are dumped.

wiki export <page> [file]

    Export wiki page to file or stdout

wiki import <page> [file]

    Import wiki page from file or stdin

wiki list 

    List wiki pages

wiki load <path> [...]

    Import wiki pages from files

    If a given path is a file, it is imported as a page with the name of the
    file. If a path is a directory, all files in that directory are imported.

wiki remove <page>

    Remove wiki page

wiki rename <page> <new_name>

    Rename wiki page

wiki replace <path> [...]

    Replace content of wiki pages from files (DANGEROUS!)

    This command replaces the content of the last version of one or more wiki
    pages with new content. The previous content is lost, and no new entry is
    created in the page history. The metadata of the page (time, author) is not
    changed either.

    If a given path is a file, it is imported as a page with the name of the
    file. If a path is a directory, all files in that directory are imported.

    WARNING: This operation results in the loss of the previous content and
    cannot be undone. It may be advisable to backup the current content using
    "wiki dump" beforehand.

wiki upgrade 

    Upgrade default wiki pages to current version


另请参阅:TracBackupTracEnvironmentTracIniTracMigrate

上次修改时间 2 年前 最后修改于 2023年6月2日 上午10:32:55
注意: 查看 TracWiki 获取使用维基的帮助。

© 2025 Oracle 支持 隐私 / 不要出售我的信息 使用条款 商标政策 自动访问礼仪