Patchwork D8690: extdiff: add some comments in diffrevs()

login
register
mail settings
Submitter phabricator
Date July 7, 2020, 9:28 a.m.
Message ID <differential-rev-PHID-DREV-33t6hbemhraamu4wcbsj-req@mercurial-scm.org>
Download mbox | patch
Permalink /patch/46643/
State Superseded
Headers show

Comments

phabricator - July 7, 2020, 9:28 a.m.
pulkit created this revision.
Herald added a reviewer: hg-reviewers.
Herald added a subscriber: mercurial-patches.

REVISION SUMMARY
  It was not obvious to understand the code so I added some comments.

REPOSITORY
  rHG Mercurial

BRANCH
  default

REVISION DETAIL
  https://phab.mercurial-scm.org/D8690

AFFECTED FILES
  hgext/extdiff.py

CHANGE DETAILS




To: pulkit, #hg-reviewers
Cc: mercurial-patches, mercurial-devel

Patch

diff --git a/hgext/extdiff.py b/hgext/extdiff.py
--- a/hgext/extdiff.py
+++ b/hgext/extdiff.py
@@ -398,6 +398,8 @@ 
 ):
 
     subrepos = opts.get(b'subrepos')
+
+    # calculate list of files changed between both revs
     st = repo.status(node1a, node2, matcher, listsubrepos=subrepos)
     mod_a, add_a, rem_a = set(st.modified), set(st.added), set(st.removed)
     if do3way:
@@ -413,11 +415,18 @@ 
     common = modadd | rem_a | rem_b
     if not common:
         return 0
+
     # Always make a copy of node1a (and node1b, if applicable)
+    # dir1a should contain files which are:
+    #   * modified or removed from node1a to node2
+    #   * modified or added from node1b to node2
+    #     (except file added from node1a to node2 as they were not present in
+    #     node1a)
     dir1a_files = mod_a | rem_a | ((mod_b | add_b) - add_a)
     dir1a = snapshot(ui, repo, dir1a_files, node1a, tmproot, subrepos)[0]
     rev1a = b'@%d' % repo[node1a].rev()
     if do3way:
+        # file calculation criteria same as dir1a
         dir1b_files = mod_b | rem_b | ((mod_a | add_a) - add_b)
         dir1b = snapshot(ui, repo, dir1b_files, node1b, tmproot, subrepos)[0]
         rev1b = b'@%d' % repo[node1b].rev()