Skip to content
This repository

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP

Synchronizes wiki between two Trac projects

tag: 0.2

Fetching latest commit…

Cannot retrieve the latest commit at this time

README.md

TracWikiSync

This Trac plugin allows you to synchronize wiki pages between to separate Trac installations.

A common use case is to install a local Trac project on your workstation and synchronize the wiki pages with your remote Trac server. This allows you to bring the wiki content offline, or edit the content locally before batch updating to the remote server (useful when working over slow Internet/VPN connections).

Features

  • Supports various type of synchronization states:

    • MODIFED: Local page has been modified and will be updated to the remote server

    • NEW: Local page is new and will be updated to the remote server

    • OUTDATED: Remote page has been modified and will be copied from the remote server

    • MISSING: Remote page exists and will be copied from the remote server

    • CONFLICT: Both local and remote pages have been modified, you can choose to either update to or copy from the remote server

    • SYNCED: Both local and remote pages are identitical

    • IGNORED: Skip these pages during synchronization

  • Uses standard GET and POST methods for synchronization, no other Trac plugins required

  • Supports BASIC/DIGEST authentication

  • Supports batch synchronization

TODO

  • Implement attachment synchronization

Installation and Requirements

Minimum requirements:

  • Trac 0.12 >=

  • Python 2.6 >=

Instructions:

  1. Install Trac and the latest TracWikiSync (highly recommend using virtualenvwrapper)

    $ pip install trac
    ...
    $ pip install TracWikiSync-xxx.zip
    
  2. Create a new Trac environment

    $ trac-admin /path/to/myproject initenv
    $ trac-admin /path/to/myproject permission add admin TRAC_ADMIN
    $ htdigest -c /path/to/myproject/.htpasswd myproject admin
    ...
    
  3. Enable the plugin by adding the following lines in myproject/conf/trac.ini

    [components]
    wikisync.* = enabled
    
  4. Upgrade the Trac environment

    $ trac-admin /path/to/myproject upgrade
    ...
    
  5. Start Trac

    $ tracd --port=8080 \
    --auth=*,/path/to/myproject/.htpasswd,myproject \
    /path/to/myproject
    

User Permissions

Trac users require the following permissions:

  • TRAC_ADMIN: To configure the remote server information in the admin panels

  • WIKI_ADMIN: To perform synchronization

Bugs

Please use Issues

Version History

  • v0.1: Initial release.
  • v0.2:
    • Bugfix: UNKNOWN status is now correctly detected as NEW for new wiki
    • Bugfix: Fixed NoneType pointer error when new wiki is created
Something went wrong with that request. Please try again.