SVN-Mirror
view release on metacpan or search on metacpan
This fixes kde svn repository problem.
* Fix two minor pool usage that causes error on nfs-mounted fsfs (and
possibly win32).
[Changes for 0.60 - Apr 29, 2005]
* When doing get_latest_rev with 1.1.x, reset offset if it went below 0.
[Marcus Rueckert <darix@irssi.org>]
* Fix uuid checking in --relocate. [Marcus Rueckert <darix@irssi.org>]
[Changes for 0.59 - Apr 25, 2005]
* Doc fixes. [Mathias Hennersdorf <henner@tty.ch>]
* Fix a bad path translation in has_local.
[Changes for 0.58 - Apr 18, 2005]
* Fix edge case in local copy_source resolution and unresolvable source.
* Win32API::GUID support on win32. [Autrijus]
* Florian Weimer reported that repeated sync of an empty mirror
source will result in redundant local revisions. Fix it by
always "touching" the add_directory() call, regardless of
whether anything was actually updated locally. [Autrijus]
[Changes for 0.48 - Oct 4, 2004]
* New: relocate. [Autrijus]
* Use fsfs as SVNFSTYPE when using svn 1.1.
* Fix delete and upgrade on win32. [Autrijus]
* Support arch vcp source driver.
* Fix find_local_rev cache that assumes uses the same cache for
different target repositories.
lib/SVN/Mirror.pm view on Meta::CPAN
my $rev = $self->commit_txn($txn);
print "Committed revision $rev.\n";
$self->{fs}->change_rev_prop ($rev, "svn:author", 'svm');
$self->{fs}->change_rev_prop
($rev, "svn:log", "SVM: initializing mirror for $self->{target_path}");
return $rev;
}
sub relocate {
my $self = shift;
my $pool = SVN::Pool->new_default ($self->{pool});
my $headrev = $self->{headrev} = $self->{fs}->youngest_rev;
$self->{root} = $self->{fs}->revision_root ($headrev);
$self->is_initialized
or die "Cannot relocate uninitialized path $self->{target_path}";
$self->pre_init (0);
$self->load_state ();
my $ra = $self->_new_ra (url => $self->{source});
my $ra_uuid = $ra->get_uuid;
die "Local and remote UUID differ." unless ($ra_uuid eq $self->{source_uuid} or $ra_uuid eq $self->{rsource_uuid});
# Get latest revprops
my $old_prevs = $self->{fs}->revision_proplist(
lib/SVN/Mirror/Ra.pm view on Meta::CPAN
}
sub run {
my $self = shift;
my $ra = $self->_new_ra;
my $latestrev = $self->get_latest_rev ($ra);
$self->lock ('sync');
$self->load_fromrev;
# there were code here to use find_local_rev, but it will get base that
# is too old for use, if there are relocate happening.
# but this might cause race condition, while we also have lock now, need
# to take a closer look.
$self->{headrev} = $self->{fs}->youngest_rev;
if ($self->{skip_to} && $self->{skip_to} =~ m/^HEAD(?:-(\d+))?/) {
$self->{skip_to} = $latestrev - ($1 || 0);
}
my $startrev = ($self->{skip_to} || 0);
$startrev = $self->{fromrev}+1 if $self->{fromrev}+1 > $startrev;
my $endrev = shift || -1;
if ($endrev && $endrev =~ m/^HEAD(?:-(\d+))?/) {
t/test_repo.dump view on Meta::CPAN
K 12
svn:keywords
V 2
Id
PROPS-END
use SVN::Core;
package SVN::Client;
use SVN::Base(qw(Client svn_client_ checkout update switch add mkdir delete
commit status log blame diff merge cleanup relocate
revert resolved copy move revprop_set propset
proplist revvprop_list export ls cat import));
=head1 NAME
SVN::Client - Subversion client functions
=head1 SYNOPSIS
use SVN::Client;
t/test_repo.dump view on Meta::CPAN
Outputs the content of the file identified by path_or_url and revision to the
FILEHANDLE. FILEHANLDE is a reference to a filehandle. revision should be a
number or 'HEAD'. pool is an optional parameter.
=cut
# import methods into our name space and wrap them in a closure
# to support method calling style $ctx->log()
foreach my $function (qw(checkout update switch add mkdir delete commit
status log blame diff merge cleanup relocate
revert resolved copy move revprop_set propset
proplist revvprop_list export ls cat import))
{
my $real_function = \&{"SVN::_Client::svn_client_$function"};
*{"SVN::Client::$function"} = sub
{
# Allows import to work while not breaking use SVN::Client.
if ($function eq 'import')
{
( run in 0.677 second using v1.01-cache-2.11-cpan-5511b514fd6 )