Eric Wong  committed 693c15d

rebase: error out for NO_PYTHON if they use recursive merge

recursive merge relies on Python, and we can't perform
rename-aware merges without the recursive merge. So bail out
before trying it.

The test won't work w/o recursive merge, either, so skip that,

Signed-off-by: Eric Wong <>
Signed-off-by: Junio C Hamano <>

  • Participants
  • Parent commits c3fb0e3
  • Branches master

Comments (0)

Files changed (2)


 	exit $?
+if test "@@NO_PYTHON@@" && test "$strategy" = "recursive"
+	die 'The recursive merge strategy currently relies on Python,
+which this installation of git was not configured with.  Please consider
+a different merge strategy (e.g. octopus, resolve, stupid, ours)
+or install Python and git with Python support.'
 # start doing a rebase with git-merge
 # this is rename-aware if the recursive (default) strategy is used

File t/

 . ./
+if test "$no_python"; then
+	echo "Skipping: no python => no recursive merge"
+	test_done
+	exit 0
 T="A quick brown fox
 jumps over the lazy dog."
 for i in 1 2 3 4 5 6 7 8 9 10