aboutsummaryrefslogtreecommitdiff
path: root/git-remote.perl
diff options
context:
space:
mode:
authorJunio C Hamano <gitster@pobox.com>2007-09-29 23:32:36 -0700
committerJunio C Hamano <gitster@pobox.com>2007-09-29 23:32:36 -0700
commit2af89f12c666634e92cd79a6c1af6acc34104c34 (patch)
tree6f5ccd286e8741b41d3384025e1df43194ff2feb /git-remote.perl
parentf8babc4dabebebd9e95537df6da0408c1c178615 (diff)
parentf4bb20cc99fe18ba0e7dd421f1d95a05c1cbbc93 (diff)
downloadgit-2af89f12c666634e92cd79a6c1af6acc34104c34.tar.gz
git-2af89f12c666634e92cd79a6c1af6acc34104c34.tar.xz
Merge branch 'maint'
* maint: git-remote: exit with non-zero status after detecting errors. rebase -i: squash should retain the authorship of the _first_ commit git-add--interactive: Improve behavior on bogus input git-add--interactive: Allow Ctrl-D to exit
Diffstat (limited to 'git-remote.perl')
-rwxr-xr-xgit-remote.perl14
1 files changed, 10 insertions, 4 deletions
diff --git a/git-remote.perl b/git-remote.perl
index b7c1e01d7..79941e40f 100755
--- a/git-remote.perl
+++ b/git-remote.perl
@@ -218,7 +218,7 @@ sub prune_remote {
my ($name, $ls_remote) = @_;
if (!exists $remote->{$name}) {
print STDERR "No such remote $name\n";
- return;
+ return 1;
}
my $info = $remote->{$name};
update_ls_remote($ls_remote, $info);
@@ -229,13 +229,14 @@ sub prune_remote {
my @v = $git->command(qw(rev-parse --verify), "$prefix/$to_prune");
$git->command(qw(update-ref -d), "$prefix/$to_prune", $v[0]);
}
+ return 0;
}
sub show_remote {
my ($name, $ls_remote) = @_;
if (!exists $remote->{$name}) {
print STDERR "No such remote $name\n";
- return;
+ return 1;
}
my $info = $remote->{$name};
update_ls_remote($ls_remote, $info);
@@ -265,6 +266,7 @@ sub show_remote {
print " Local branch(es) pushed with 'git push'\n";
print " @pushed\n";
}
+ return 0;
}
sub add_remote {
@@ -381,9 +383,11 @@ elsif ($ARGV[0] eq 'show') {
print STDERR "Usage: git remote show <remote>\n";
exit(1);
}
+ my $status = 0;
for (; $i < @ARGV; $i++) {
- show_remote($ARGV[$i], $ls_remote);
+ $status |= show_remote($ARGV[$i], $ls_remote);
}
+ exit($status);
}
elsif ($ARGV[0] eq 'update') {
if (@ARGV <= 1) {
@@ -409,9 +413,11 @@ elsif ($ARGV[0] eq 'prune') {
print STDERR "Usage: git remote prune <remote>\n";
exit(1);
}
+ my $status = 0;
for (; $i < @ARGV; $i++) {
- prune_remote($ARGV[$i], $ls_remote);
+ $status |= prune_remote($ARGV[$i], $ls_remote);
}
+ exit($status);
}
elsif ($ARGV[0] eq 'add') {
my %opts = ();