Zim::FS::Bazaar.3pm

Langue: en

Autres versions - même langue

Version: 2009-02-23 (debian - 07/07/09)

Section: 3 (Bibliothèques de fonctions)

NAME

Zim::FS::Bazaar - Bazaar version control

DESCRIPTION

This module handles a dir with Bazaar version control for Zim.

Bazaar (bzr) 1.3.1 was used to test this module.

It inherits from Zim::FS.

METHODS

Version Control Interface

"new(@PATH)"
Simple constructor for an existing Bazaar dir.
"init(@PATH)"
Constructor that will initialize a new Bazaar repository.
"commit(COMMENT)"
Commit a new version if there are any changes. Returns FALSE if there are no changes.
"revert(PATH, VERSION)"
Revert a file to a certain version. Discards all local edits. If version is undefined, assume latest saved version.
"status()"
Returns the `bzr status` output.
"list_versions(PATH)"
Returns a list with version info. PATH is an optional argument, without this argument all versions are listed.
"cat_version(PATH, VERSION1)"
Returns the content of a file a a specific version.
"diff(PATH, VERSION1, VERSION2)"
Returns the diff between VERSION1 and VERSION2 for PATH or undef. If either version is undefined a diff versus the current (possibly un-commited) version is returned. If PATH is undefined a diff over the whole tree is returned.
"annotate(PATH, VERSION)"
Returns the annotated source for PATH or undef. VERSION is an optional argument; if VERSION is not defined the current (possibly un-commited) version is assumed.

Directory Interface

With bzr we can just delete content without notifying the system. So we only provide methods for ``add'' and ``mv''.

Overloaded methods:

"on_write_file"
"touch"
"move_file"

Private Interface

These methods are used to call the bzr command.
"bzr(@ARG)"
Run the "bzr" command in the appropriate directory and return any output to STDOUT or STDERR. Will die on error with output in $@.
"bzr_rev_arg(VERSION1, VERSION2)"
Returns the revision commandline argument.

AUTHOR

Jaap Karssenberg (Pardus) <pardus@cpan.org>

Copyright (c) 2008 Jaap G Karssenberg. All rights reserved. This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.

SEE ALSO