Chris Packham <judge.packham@xxxxxxxxx> writes: > Hmm, having trouble with cat-file syntax > > On Thu, Mar 11, 2010 at 12:29 PM, Markus Heidelberg > <markus.heidelberg@xxxxxx> wrote: > > Not mergetool, but checkout: > > git checkout --merge -- file > > Ok. > $ git checkout --merge -- cpu/mpc83xx/start.S > > > git cat-file blob :1:file > file.base > > > > $ git cat-file blob :1:cpu/mpc83xx/start.S > cpu/mpc83xx/start.S.base > fatal: Not a valid object name :1:cpu/mpc83xx/start.S > > So I think I have figured out that I'm trying to get at stage 1, 2 and > 3 of the file that git checkout --merge has just setup but I'm > tripping over the syntax. First, instead of 'git cat-file blob <blob-id>' you can simply use 'git show <blob-id>'. Second, while in $ git checkout --merge -- cpu/mpc83xx/start.S the path cpu/mpc83xx/start.S is relative to your current directory, in $ git show :1:cpu/mpc83xx/start.S > start.S.base the path has to be "absolute path in repository", i.e. path relative to top directory of the repository. Try $ git show :1:$(git rev-parse --show-prefix)cpu/mpc83xx/start.S \ > cpu/mpc83xx/start.S.base HTH -- Jakub Narebski Poland ShadeHawk on #git -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html