diff options
author | W. Trevor King <wking@drexel.edu> | 2010-01-03 11:04:50 -0500 |
---|---|---|
committer | W. Trevor King <wking@drexel.edu> | 2010-01-03 11:04:50 -0500 |
commit | bc3cd9cfa6685ff7006b511e64a562ff9e41da9c (patch) | |
tree | 36a4ea01c3d4cda328490199c5e667a8c24be851 /.be/bea86499-824e-4e77-b085-2d581fa9ccab/bugs/ed5eac05-80ed-411d-88a4-d2261b879713/comments/9525e3f3-a044-4fa9-b311-56336267b8b5 | |
parent | 97eabcc3657bdc6511baebd79b059ae1589c7e87 (diff) | |
download | bugseverywhere-bc3cd9cfa6685ff7006b511e64a562ff9e41da9c.tar.gz |
Add #bea/ed5# : Slow and ugly diff implementation
Diffstat (limited to '.be/bea86499-824e-4e77-b085-2d581fa9ccab/bugs/ed5eac05-80ed-411d-88a4-d2261b879713/comments/9525e3f3-a044-4fa9-b311-56336267b8b5')
2 files changed, 32 insertions, 0 deletions
diff --git a/.be/bea86499-824e-4e77-b085-2d581fa9ccab/bugs/ed5eac05-80ed-411d-88a4-d2261b879713/comments/9525e3f3-a044-4fa9-b311-56336267b8b5/body b/.be/bea86499-824e-4e77-b085-2d581fa9ccab/bugs/ed5eac05-80ed-411d-88a4-d2261b879713/comments/9525e3f3-a044-4fa9-b311-56336267b8b5/body new file mode 100644 index 0000000..ae7a57f --- /dev/null +++ b/.be/bea86499-824e-4e77-b085-2d581fa9ccab/bugs/ed5eac05-80ed-411d-88a4-d2261b879713/comments/9525e3f3-a044-4fa9-b311-56336267b8b5/body @@ -0,0 +1,21 @@ +> I think a good solution would run along the lines of the currently +> commented out code in duplicate_bugdir(), where a +> VersionedStorage.changed_since(revision) +> call would give you a list of changed files. diff could work off of +> that directly, without the need to generate a whole duplicate bugdir. + +This is definately the way to go. Rough approach for the VCS family: + +1) Parse `bzr diff` or such to get a list of new,changed,moved,removed + paths. +2) Convert those paths to ids. +3) Return a list of ids to duplicate_bugdir(). +4) Provide Storage.parent(id, revision), so duplicate_bugdir() could + figure out what type of id we were dealing with (bugdir, bug, + comment, other?), and construct the appropriate difference tree. + +There could be a DupBugDir class which stored that diff tree and a +link to the current bugdir, which would make diffs much easier (work +already done, just copy the diff tree), and provide faster access to +unchanged files (just use the current version). + diff --git a/.be/bea86499-824e-4e77-b085-2d581fa9ccab/bugs/ed5eac05-80ed-411d-88a4-d2261b879713/comments/9525e3f3-a044-4fa9-b311-56336267b8b5/values b/.be/bea86499-824e-4e77-b085-2d581fa9ccab/bugs/ed5eac05-80ed-411d-88a4-d2261b879713/comments/9525e3f3-a044-4fa9-b311-56336267b8b5/values new file mode 100644 index 0000000..3dfe992 --- /dev/null +++ b/.be/bea86499-824e-4e77-b085-2d581fa9ccab/bugs/ed5eac05-80ed-411d-88a4-d2261b879713/comments/9525e3f3-a044-4fa9-b311-56336267b8b5/values @@ -0,0 +1,11 @@ +Author: W. Trevor King <wking@drexel.edu> + + +Content-type: text/plain + + +Date: Sun, 03 Jan 2010 12:25:03 +0000 + + +In-reply-to: 9c4b8921-7b43-4bb6-b650-34144b414dc0 + |