From: Junio C Hamano Date: Thu, 14 Jun 2012 23:18:04 GMT Subject: Re: Confusing error message Message-ID: <7vy5npcwk3.fsf@alter.siamese.dyndns.org> In-Reply-To: <7v395xebal.fsf@alter.siamese.dyndns.org> Junio C Hamano writes: > Phil Hord writes: > >> I messed something up during a rebase in a moved file (probably >> because I had rename detection turned off). So now I want to fix it. >> >> I think I have the commit amended right, but to be sure I want to diff >> the old file and the new file. >> >> $ git diff newfile HEAD^:oldfile >> fatal: Path 'oldfile' exists, but not 'oldfile'. >> Did you mean 'HEAD^:oldfile' aka 'HEAD^:./oldfile'? > > You can feed two blob object names to "git diff", but I do not think > there is any provision to compare a blob object and a file in the > working tree. Ah, actually we do have a bolted-on hack to allow you feeding a blob and a file, but I think you still need to follow the command line convention of subcommand name (=diff), any dashed options (e.g. "-R"), any object names (=HEAD^:oldfile) and then finally pathnames (e.g. "newfile"). Does "git diff -R HEAD^:oldfile newfile" work?