From d1802851b0c112a065b43e3f83d631f867b7e1ce Mon Sep 17 00:00:00 2001
From: Linus Torvalds <torvalds@osdl.org>
Date: Tue, 9 May 2006 19:22:25 -0700
Subject: [PATCH 1/2] revert/cherry-pick: use aggressive merge.

After doing an in-index 3-way merge, we always do the stock
"merge-index merge-one-file" without doing anything fancy;
use of --aggressive helps performance quite a bit.

Signed-off-by: Junio C Hamano <junkio@cox.net>
---
 git-revert.sh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/git-revert.sh b/git-revert.sh
index c19d3a6916c..de8b5f0f0fb 100755
--- a/git-revert.sh
+++ b/git-revert.sh
@@ -137,7 +137,7 @@ esac >.msg
 # $prev and $commit on top of us (when cherry-picking or replaying).
 
 echo >&2 "First trying simple merge strategy to $me."
-git-read-tree -m -u $base $head $next &&
+git-read-tree -m -u --aggressive $base $head $next &&
 result=$(git-write-tree 2>/dev/null) || {
     echo >&2 "Simple $me fails; trying Automatic $me."
     git-merge-index -o git-merge-one-file -a || {

From 8d7a397aab561d3782f531e733b617e0e211f04a Mon Sep 17 00:00:00 2001
From: Junio C Hamano <junkio@cox.net>
Date: Tue, 9 May 2006 19:23:23 -0700
Subject: [PATCH 2/2] checkout: use --aggressive when running a 3-way merge
 (-m).

After doing an in-index 3-way merge, we always do the stock
"merge-index merge-one-file" without doing anything fancy;
use of --aggressive helps performance quite a bit.

Signed-off-by: Junio C Hamano <junkio@cox.net>
---
 git-checkout.sh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/git-checkout.sh b/git-checkout.sh
index 463ed2eaff9..a11c939c30f 100755
--- a/git-checkout.sh
+++ b/git-checkout.sh
@@ -144,7 +144,7 @@ else
 	work=`git write-tree` &&
 	git read-tree --reset $new &&
 	git checkout-index -f -u -q -a &&
-	git read-tree -m -u $old $new $work || exit
+	git read-tree -m -u --aggressive $old $new $work || exit
 
 	if result=`git write-tree 2>/dev/null`
 	then