Mercurial > kallithea
changeset 5606:2bf5e8731154 stable
git: fix parsing of git mode change + rename diffs
Assume mode lines come first, like for hg diffs.
author | Mads Kiilerich <madski@unity3d.com> |
---|---|
date | Fri, 25 Dec 2015 12:33:13 +0100 |
parents | 20699dd652ff |
children | efce61aac33d |
files | kallithea/lib/diffs.py kallithea/tests/fixtures/git_diff_rename_file.diff kallithea/tests/models/test_diff_parsers.py |
diffstat | 3 files changed, 16 insertions(+), 3 deletions(-) [+] |
line wrap: on
line diff
--- a/kallithea/lib/diffs.py Fri Dec 25 12:32:47 2015 +0100 +++ b/kallithea/lib/diffs.py Fri Dec 25 12:33:13 2015 +0100 @@ -160,11 +160,11 @@ # has already been split on this: # ^diff[ ]--git [ ]a/(?P<a_path>.+?)[ ]b/(?P<b_path>.+?)\n + (?:^old[ ]mode[ ](?P<old_mode>\d+)\n + ^new[ ]mode[ ](?P<new_mode>\d+)(?:\n|$))? (?:^similarity[ ]index[ ](?P<similarity_index>\d+)%\n ^rename[ ]from[ ](?P<rename_from>.+)\n ^rename[ ]to[ ](?P<rename_to>.+)(?:\n|$))? - (?:^old[ ]mode[ ](?P<old_mode>\d+)\n - ^new[ ]mode[ ](?P<new_mode>\d+)(?:\n|$))? (?:^new[ ]file[ ]mode[ ](?P<new_file_mode>.+)(?:\n|$))? (?:^deleted[ ]file[ ]mode[ ](?P<deleted_file_mode>.+)(?:\n|$))? (?:^index[ ](?P<a_blob_id>[0-9A-Fa-f]+)
--- a/kallithea/tests/fixtures/git_diff_rename_file.diff Fri Dec 25 12:32:47 2015 +0100 +++ b/kallithea/tests/fixtures/git_diff_rename_file.diff Fri Dec 25 12:33:13 2015 +0100 @@ -2,3 +2,9 @@ similarity index 100% rename from work-horus.xls rename to file.xls +diff --git a/files/var/www/favicon.ico b/files/var/www/favicon.ico/DEFAULT +old mode 100644 +new mode 100755 +similarity index 100% +rename from files/var/www/favicon.ico +rename to files/var/www/favicon.ico/DEFAULT
--- a/kallithea/tests/models/test_diff_parsers.py Fri Dec 25 12:32:47 2015 +0100 +++ b/kallithea/tests/models/test_diff_parsers.py Fri Dec 25 12:33:13 2015 +0100 @@ -133,7 +133,14 @@ {'added': 0, 'deleted': 0, 'binary': True, - 'ops': {RENAMED_FILENODE: 'file renamed from work-horus.xls to file.xls'}}) + 'ops': {RENAMED_FILENODE: 'file renamed from work-horus.xls to file.xls'}}), + ('files/var/www/favicon.ico/DEFAULT', + 'R', + {'added': 0, + 'binary': True, + 'deleted': 0, + 'ops': {4: 'file renamed from files/var/www/favicon.ico to files/var/www/favicon.ico/DEFAULT', + 6: 'modified file chmod 100644 => 100755'}}) ], 'git_diff_mod_single_binary_file.diff': [ ('US Warszawa.jpg', 'M',