A VC command that still doesn't allow using diff-mode automatically thus preventing proper fontification and all other related features is `vc-root-diff' with a prefix argument HISTORIC. It has such comment: ;; FIXME: this does not work right, `vc-version-diff' ends up ;; calling `vc-deduce-fileset' to find the files to diff, and ;; that's not what we want here, we want the diff for the VC root dir. This patch fixes this omission by implementing `vc-root-version-diff' that is able to compare two revisions even on separate branches from their roots: