Matthieu Moy [off-list ref] writes:
Here:
+ for my $refspec (@refsspecs) {
+ unless ($refspec =~ m/^(\+?)([^:]*):([^:]*)$/) {
+ die("Invalid refspec for push. Expected <src>:<dst> or +<src>:<dst>");
+ }
+ my ($force, $local, $remote) = ($1 eq "+", $2, $3);
At this point, $force is a boolean saying whether there were a +, and
$local and $remote are as you can guess.
It may be slightly more Perl-ish to hoist the "0-or-1" outside the group
and rely on $1 becoming undef, like this:
my ($force, $local, $remote) = $refspec =~ /^(\+)?([^:]*):([^:]*)$/
or die(...);
Even though it largely is a matter of taste, I think.