man => 0,
);
-GetOptions(\%options,'quick|Q!','quiet|q!','debug|d+','help|h|?','man|m');
+GetOptions(\%options,'quick|Q+','quiet|q!','debug|d+','help|h|?','man|m');
pod2usage() if $options{help};
pod2usage({verbose=>2}) if $options{man};
next if /^#/;
my ($repo,$command) = split /\t/,$_,2;
$repo =~ s/^\~/$home/;
+ $command =~ s/^\~/$home/ if defined $command;
$$repos{$repo} = $command;
}
}
my $HOME=User->Home;
my $HOSTNAME=qx(hostname);
$HOSTNAME=~s/\n//g;
+my $CAN_IGNORE_EXTERNALS = 0;
+qx(svn --version) =~ /\(r(\d+)\)/;
+if ($1 > 13838) {
+ $CAN_IGNORE_EXTERNALS = 1;
+}
+
my %repos;
for ('/etc/sa.conf', "${HOME}/.sarc", "${HOME}/.sarc_${HOSTNAME}", "${HOME}/.sarc_local") {
if (-e $_) {
}
}
-
$DEBUG = $options{debug};
my $command;
$command = 'status';
}
-
while (my ($repo,$run_after) = each(%repos)) {
if (-e "$repo/.svn") {
+ print "Checking [$repo]\n";
system('svn',
$command,
$options{quiet}?'-q':(),
- $options{quick}?('--ignore-externals','-N'):(),
+ ($options{quick} and $CAN_IGNORE_EXTERNALS)?'--ignore-externals':(),
+ $options{quick}>1?'-N':(),
$repo,
);
}