From: Martin Mares Date: Mon, 16 Jul 2012 18:07:35 +0000 (+0200) Subject: Update2: Recognize merges this->another in addition to another->this X-Git-Tag: v1.1~11 X-Git-Url: http://mj.ucw.cz/gitweb/?a=commitdiff_plain;h=f6d82195bdd1681ac34add402cdcf63221086608;p=git-tools.git Update2: Recognize merges this->another in addition to another->this This is useful whenever somebody merges two branches and pushes the result to both of them. However, both branches must be local. When "git pull" merges with a remote tracking branch, the commit message includes the name of the remote, so our test does not trigger (intentionally). --- diff --git a/update2 b/update2 index 093919f..5212410 100755 --- a/update2 +++ b/update2 @@ -112,10 +112,10 @@ if ($old =~ /^0+$/) { my $n0 = $nonmerges[0]; my $c0p = $c0->{parents}; if (@{$c0p} == 2 && - $c0->{subject} =~ m{^\s*Merge branch '([^']*)'} && - $1 ne $ref && - ($c0p->[0] eq $old || $c0p->[1] eq $old)) { - # Pushed a merge of a foreign branch to the current one + ($c0p->[0] eq $old || $c0p->[1] eq $old) && + $c0->{subject} =~ m{^\s*Merge branch '([^']*)' into (\S+)} && + (($1 eq $ref) != ($2 eq $ref))) { + # Pushed a merge of the current branch with another local branch $subj .= ' ' . $c0->{subject}; } elsif ($n0) { # Otherwise take the subject of the first non-merge commit