The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

sli - Build and query SVN::Log::Index indices

SYNOPSIS

sli command [options] [args]

DESCRIPTION

sli is a command line interface to SVN::Log::Index. It supports adding revisions to an index, and then querying that index for revisions that match the query.

Each index remembers the URL of the Subversion repository that it is indexing and the revision number that was last successfully indexed.

The command line follows the Subversion/SVK model. There may be some global options, followed by a command name. The command may then require a number of other options to be specified.

GLOBAL OPTIONS

--index PATH

The full path to the index to operate on. If not specified then the default value is ${HOME}/.sli/index/.

COMMANDS

create

Creates a new index. The options and their meanings are:

--repos URL

This option is mandatory.

The URL of the Subversion repository that will be indexed. Only one repository can be indexed per --index. This option is mandatory.

--overwrite

If present then the --index will be overwritten. If not present then the existence of any files in --index will cause the command to stop.

add

Adds information about one or more revisions to an existing index. The options and their meanings are:

--revision N or --revision N:M

This option is mandatory.

The revision, or revisions, to be added to the index. If a single revision number is given then just that revision is added to the index. If two revision numbers are given, then information about all revisions between those two numbers, inclusive, are added to the index.

Two symbolic revision names may be used instead of numbers. LAST means the revision number one higher than the revision number last indexed. HEAD means the repository's youngest revision.

Search the repository, generating a report of all the revisions that matched the query. The options and their meanings are:

--query QUERY

This option is mandatory.

The query string to search for. See the documentation for "QUERY SYNTAX" in SVN::Log::Index for details of the query string syntax.

--verbose

Boolean, indicating whether the report should include each matching revision's log message.

help

Displays help about each command.

The available commands are:

  create        - create a new index
  add           - add one or more revisions to the index
  search        - search the index
  help          - display this help

Use

  sli help <command>

for more.

EXAMPLES

Create a new index.

  sli create --index /path/to/index --repos url://for/repos

Add the first 100 revisions to the index.

  sli add --index /path/to/index --revision 1:100

Add the next revision to the index.

  sli add --index /path/to/index --revision 101

Add up to revision 150 to the index.

  sli add --index /path/to/index --revision LAST:150

Add all the remaining revisions to the index.

  sli add --index /path/to/index --revision LAST:HEAD

Search the index for commits by nik that contain the string fixed. Show basic information about the revision.

  sli search --index /path/to/index --query "author:nik AND fixed"

Repeat the previous query, but use + to connect terms.

  sli search --index /path/to/index --query "author:nik +fixed"

Repeat the previous query, but include each revision's log message too.

  sli search --index /path/to/index --query "author:nik AND fixed" \
    --verbose

SEE ALSO

SVN::Log::Index, KinoSearch::QueryParser::QueryParser

BUGS

Please report any bugs or feature requests to bug-svn-log-index@rt.cpan.org, or through the web interface at http://rt.cpan.org/NoAuth/ReportBug.html?Queue=SVN-Log-Index. I will be notified, and then you'll automatically be notified of progress on your bug as I make changes.

AUTHOR

The current maintainer is Nik Clayton, <nikc@cpan.org>.

The original author was Garrett Rooney, <rooneg@electricjellyfish.net>

COPYRIGHT AND LICENSE

Copyright 2006-2007 Nik Clayton. All Rights Reserved.

Copyright 2004 Garrett Rooney. All Rights Reserved.

This software is licensed under the same terms as Perl itself.