Diffing between two entire directories/projects in hg or git?

To simply create a diff patch in git’s diff format from two arbitrary files or directories, without any fancy repository stuff or version control:

git diff --no-index some/path other/path > some_filename

Jakub NarÄ™bski’s comment on knittl’s answer hinted at the answer… For simplicity’s sake, that’s the full command.

The > part creates a file and redirects the output to it. If you don’t want a file and just want the output printed in your console so you can copy it, just remove the > some_filename part.


For convenient copying and pasting, if you’ve already cded to a directory containing the original directory/file named a and the modified directory b, it’ll be:

git diff --no-index a b > patch

Leave a Comment