]>
git.madduck.net Git - code/myrepos.git/blobdiff - mr
madduck's git repository
Every one of the projects in this repository is available at the canonical
URL git://git.madduck.net/madduck/pub/<projectpath> — see
each project's metadata for the exact URL.
All patches and comments are welcome. Please squash your changes to logical
commits before using git-format-patch and git-send-email to
patches@ git. madduck. net .
If you'd read over the Git project's submission guidelines and adhered to them,
I'd be especially grateful.
SSH access, as well as push access can be individually
arranged .
If you use my repositories frequently, consider adding the following
snippet to ~/.gitconfig and using the third clone URL listed for each
project:
[url "git://git.madduck.net/madduck/"]
insteadOf = madduck:
print "\n" unless $first;
$first=0;
print "\n" unless $first;
$first=0;
- if (exists $config{$topdir}{$subdir}{skip}) {
- my $ret=system($config{$topdir}{$subdir}{skip});
- if ($ret >> 8 == 0) {
- print "mr $action: $dir skipped per config file\n" if $verbose;
- push @skipped, $dir;
- next;
- }
- }
-
action($action, $dir, $topdir, $subdir);
}
action($action, $dir, $topdir, $subdir);
}
sub action {
my ($action, $dir, $topdir, $subdir) = @_;
sub action {
my ($action, $dir, $topdir, $subdir) = @_;
+
+ my $lib= exists $config{$topdir}{$subdir}{lib} ?
+ $config{$topdir}{$subdir}{lib} : "";
if ($action eq 'checkout') {
if (-d $dir) {
if ($action eq 'checkout') {
if (-d $dir) {
- print "mr $action: $dir already exists, skipping checkout\n";
+ print "mr $action: $dir already exists, skipping checkout\n" if $verbose ;
push @skipped, $dir;
return;
}
$dir=~s/^(.*)\/[^\/]+\/?$/$1/;
}
push @skipped, $dir;
return;
}
$dir=~s/^(.*)\/[^\/]+\/?$/$1/;
}
- if ($action eq 'update') {
+ els if ($action eq 'update') {
if (! -d $dir) {
return action("checkout", $dir, $topdir, $subdir);
}
}
if (! -d $dir) {
return action("checkout", $dir, $topdir, $subdir);
}
}
if (! chdir($dir)) {
print STDERR "mr $action: failed to chdir to $dir: $!\n";
push @skipped, $dir;
}
if (! chdir($dir)) {
print STDERR "mr $action: failed to chdir to $dir: $!\n";
push @skipped, $dir;
}
- elsif (! exists $config{$topdir}{$subdir}{$action}) {
+
+ if (exists $config{$topdir}{$subdir}{skip}) {
+ my $ret=system($lib.$config{$topdir}{$subdir}{skip});
+ if ($ret >> 8 == 0) {
+ print "mr $action: $dir skipped per config file\n" if $verbose;
+ push @skipped, $dir;
+ next;
+ }
+ }
+
+ if (! exists $config{$topdir}{$subdir}{$action}) {
print STDERR "mr $action: no defined $action command for $topdir$subdir, skipping\n";
push @skipped, $dir;
}
else {
print "mr $action: in $dir\n";
print STDERR "mr $action: no defined $action command for $topdir$subdir, skipping\n";
push @skipped, $dir;
}
else {
print "mr $action: in $dir\n";
- my $command="set -e; ".
- (exists $config{$topdir}{$subdir}{lib} ?
- $config{$topdir}{$subdir}{lib} : "").
+ my $command="set -e; ".$lib.
"my_action(){ $config{$topdir}{$subdir}{$action} ; }; my_action ".
join(" ", map { s/\//\/\//g; s/"/\"/g; '"'.$_.'"' } @ARGV);
my $ret=system($command);
"my_action(){ $config{$topdir}{$subdir}{$action} ; }; my_action ".
join(" ", map { s/\//\/\//g; s/"/\"/g; '"'.$_.'"' } @ARGV);
my $ret=system($command);