git --diff: fix traceback when getting mode change
- use the manifest instead of the mode in the working dir
if the diff is against two revisions
- add a testcase
=======================
Should display 'First commit message'
description:
First commit message
=======================
Should display 'Second commit message'
description:
Second commit message
=======================
Should display 'Third commit message\n This is the 3rd log message'
description:
Third commit message
This is the 3rd log message
=======================
Should display 'Fifth commit message\n This is the 5th log message'
description:
Fifth commit message