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'? This was confusing, so I tried different variants. This one produced no output, suggesting no differences: $ git diff -- newfile HEAD^:oldfile But this one shows me that there are differences: $ git diff HEAD^:oldfile newfile And so did this one: $ git show HEAD -M Am I spelling the syntax wrong? Is the <ref>:<path> syntax not allowed on diff? If so, why all the inconsistency? In case I am misreading something here, here is the unmolested command and output I am using: $ git diff Tasker_Servers/Server_Common/GuiConfig.h HEAD^:./Tasker_Servers/Server_CommonGui/GuiConfig.h fatal: Path 'Tasker_Servers/Server_CommonGui/GuiConfig.h' exists, but not 'Tasker_Servers/Server_CommonGui/GuiConfig.h'. Did you mean 'HEAD^:Tasker_Servers/Server_CommonGui/GuiConfig.h' aka 'HEAD^:./Tasker_Servers/Server_CommonGui/GuiConfig.h'? $ git --version git version 1.7.11.rc3.219.g94bee05 Phil -- 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