{"thread":{"id":"2410","subject":"Re: Expected Behavior?","startedAt":"2005-11-09T02:58:58Z","lastAt":"2005-11-09T06:28:01Z","messageCount":2,"participants":["Jon Loeliger","Junio C Hamano"],"isPatch":false,"patchVersion":null,"patchTotal":null},"messages":[{"id":"11375","messageId":"E1EZgAs-0008B4-QZ@jdl.com","threadId":"2410","inReplyTo":null,"subject":"Re: Expected Behavior?","fromName":"Jon Loeliger","fromEmail":"jdl@freescale.com","sentAt":"2005-11-09T02:58:58Z","receivedAt":"2005-11-09T02:58:58Z","isPatch":false,"sender":{"key":"jdl@jdl.com","avatar":"https://gravatar.com/avatar/75ce9a10b151acd2c28ec4ab2136dba7b2ff1634530bd04b155981a749d08a64?d=mp&s=160"},"body":"<Young Frankenstein> Froe-derick wrote: </Young Frankenstein>\n\n> Jon: You could try to this merge with the recursive merge strategy\n> (git merge -s recursive 'merge message' master dev) If you do, you\n> _should_ get something like:\n> \n>     CONFLICT (add/add): File file3 added non-identically in both\n>     branches. Adding as file3_master and file3_dev instead.\n\nHmmm. That didn't go too well. Concisely:\n\n    % git merge -s recursive \"Grab dev stuff\" master dev\n    Trying really trivial in-index merge...\n    fatal: Merge requires file-level merging\n    Nope.\n    Traceback (most recent call last):\n      File \"/usr/bin/git-merge-recursive\", line 8, in ?\n\tfrom gitMergeCommon import *\n    ImportError: No module named gitMergeCommon\n    Automatic merge failed/prevented; fix up by hand\n\nFull details below.\n\n> You will then end up with file3_master and file3_dev in your working\n> tree, which corresponds to file3 in the master branch and file3 in the\n> dev branch, respectively.\n\nThat'd be cool, because the first thing I tend to want to do\nafter a failed file merge is look at clear versions of both files.\nGives me a global sense of where the file needs to go...  You know.\n\njdl\n\n\n\n\n\n[ tail end of the make install output ]\n\ninstall -d -m755 '/usr/share/git-core/templates/'\n(cd blt && tar cf - .) | \\\n(cd '/usr/share/git-core/templates/' && tar xf -)\nmake[1]: Leaving directory `/usr/src/git-core/templates'\ninstall -d -m755 '/usr/share/git-core/python'\ninstall gitMergeCommon.py '/usr/share/git-core/python'\n\n\n\n% git merge -s recursive \"Grab dev stuff\" master dev\nTrying really trivial in-index merge...\nfatal: Merge requires file-level merging\nNope.\nTraceback (most recent call last):\n  File \"/usr/bin/git-merge-recursive\", line 8, in ?\n    from gitMergeCommon import *\nImportError: No module named gitMergeCommon\nAutomatic merge failed/prevented; fix up by hand\n\n% git -v\ngit version 0.99.9.GIT\n% cat /usr/src/git-core/.git/HEAD\nf8d294f0a44c4305a9f3a1c70beb6a1c7583f287\n\n\n% ll /usr/share/git-core/python/\ntotal 16\n4 drwxr-xr-x  2 root root 4096 Nov  8 20:17 .\n4 drwxr-xr-x  4 root root 4096 Sep 14 19:47 ..\n8 -rwxr-xr-x  1 root root 6879 Nov  8 20:17 gitMergeCommon.py\n\n% python\nPython 2.3.5 (#2, May  4 2005, 08:51:39)\n[GCC 3.3.5 (Debian 1:3.3.5-12)] on linux2\n"},{"id":"11378","messageId":"7vslu6mj2m.fsf@assigned-by-dhcp.cox.net","threadId":"2410","inReplyTo":"E1EZgAs-0008B4-QZ@jdl.com","subject":"Re: Expected Behavior?","fromName":"Junio C Hamano","fromEmail":"junkio@cox.net","sentAt":"2005-11-09T06:28:01Z","receivedAt":"2005-11-09T06:28:01Z","isPatch":false,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"Jon Loeliger <jdl@freescale.com> writes:\n\n> Hmmm. That didn't go too well. Concisely:\n>\n>     % git merge -s recursive \"Grab dev stuff\" master dev\n>     Trying really trivial in-index merge...\n>     fatal: Merge requires file-level merging\n>     Nope.\n>     Traceback (most recent call last):\n>       File \"/usr/bin/git-merge-recursive\", line 8, in ?\n> \tfrom gitMergeCommon import *\n>     ImportError: No module named gitMergeCommon\n>     Automatic merge failed/prevented; fix up by hand\n\nCould you check diff between /usr/bin/git-merge-recursive and\ngit-merge-recursive.py in your source tree and see if the\nappending to sys.path points at the right place (i.e. where the\nmake installs gitMergeCommon.py)?  Mine looks like this:\n\n  --- git-merge-recursive.py      2005-11-08 02:27:08.000000000 +0000\n  +++ /usr/bin/git-merge-recursive        2005-11-09 06:17:58.000000000 +0000\n  @@ -1,10 +1,10 @@\n  -#!/usr/bin/python\n  +#!/usr/bin/python2.4\n\n   import sys, math, random, os, re, signal, tempfile, stat, errno, traceback\n   from heapq import heappush, heappop\n   from sets import Set\n\n  -sys.path.append('''@@GIT_PYTHON_PATH@@''')\n  +sys.path.append('''/usr/share/git-core/python''')\n   from gitMergeCommon import *\n\n   originalIndexFile = os.environ.get('GIT_INDEX_FILE',\n\nBy default we set prefix to $HOME so ~/bin/git-merge-recursive\nwould import ~/share/git-core/python/gitMergeCommon.py.  Binary\npackaging typically set prefix to /usr, so the executable is in\n/usr/bin, and should import from /usr/share/git-core/python/,\nwhich is as your make log shows:\n\n> [ tail end of the make install output ]\n>\n> install -d -m755 '/usr/share/git-core/templates/'\n> (cd blt && tar cf - .) | \\\n> (cd '/usr/share/git-core/templates/' && tar xf -)\n> make[1]: Leaving directory `/usr/src/git-core/templates'\n> install -d -m755 '/usr/share/git-core/python'\n> install gitMergeCommon.py '/usr/share/git-core/python'\n"}]}