wiki:SvnCliRemotePlugin

Version 3 (modified by Cinc-th, 21 months ago) (diff)

Updated status section

Subversion connector for remote and local repositories using the svn command line client

Description

This plugin allows you to connect to remote and/or local subversion repositories. It uses the subversion command line client svn so no subversion-python bindings need to be installed which sometimes can be a daunting task.

This is a direct connector without any caching so initial viewing of large trees is slow especially for remote Http:/Https: repositories like https://trac-hacks.org/svn. Same for very large changesets.

Nevertheless working with subtrees (like https://trac-hacks.org/svn/peerreviewplugin) is going well.

Status

Note that this plugin is still in development so bugs exists and features are still missing.

  • No support for properties (implemented now)
  • No preview for certain files containing unicode characters (implemented now)
  • Context navigation for Next Revision doesn't work
  • Changesets with svn-copied, svn-moved or deleted files in younger revisions may not show all information
  • No caching (as designed)

It's surprising how broken data in an ancient repository can be (corrupted commit messages, missing dates or author information, ...) so be prepared for interesting results...

Bugs/Feature Requests

Existing bugs and feature requests for SvnCliRemotePlugin are here.

If you have any issues, create a new ticket.

defect

0 / 1

Note:

Without access to the repository it's difficult or even impossible to debug any problems. So try to provide a link to a public repository showing the bug when creating a bugreport.

Download

Download the zipped source from here.

Source

You can check out SvnCliRemotePlugin from here using Subversion, or browse the source with Trac.

Installation

General instructions on installing Trac plugins can be found on the TracPlugins page.

Enable the plugin from the Trac plugin admin page or by adding the following to your trac.ini file:

[components]
subversioncli.svn_cli.subversionconnector = enabled

Configuration

Use the Trac repository admin page to configure a repository.

There are two connector types available:

  • svn-cli-direct for local repositories
  • svn-cli-remote for remote repositories like http: or https:

Local repository

For local repositories you have to provide an absolute path to the repository directory.

Choose svn-cli-direct as connector.

Remote repository

There is no native support for remote subversion repositories in Trac. The admin page checks if an entered path is a local one, more specifically if it's an absolute one. The path doesn't have to exist, though.

We have to trick Trac into accepting a Url by prepending it with a slash / (or x:\ when running Trac on Windows) like this:

    /https://trac-hacks.org/svn

or

    x:\https://trac-hacks.org/svn

Choose svn-cli-remote as connector.

Recent Changes

18272 by Cinc-th on 2021-05-01 10:10:23
SvnCliRemotePlugin: again fixes to svn path handling. This mostly reverts [18259] which actually broke some feature. Now the path handling should really be the same as Tracs default...
18259 by Cinc-th on 2021-04-23 10:24:02
SvnCliRemotePlugin: some fixes to svn path handling. The plugin now returns the same path information as Tracs svn_fs plugin. Fixes for Python 3.
18090 by Cinc-th on 2021-03-24 12:30:24
SvnCliRemotePlugin: some refactoring and removal of obsolete code.
(more)

Author/Contributors

Author: Cinc-th
Maintainer: Cinc-th
Contributors: