Mercurial > hgsubversion
diff hg_delta_editor.py @ 312:4dc197f533c1
hg_delta_editor: reformat huge comment, rename __determine_parent_branch()
author | Patrick Mezard <pmezard@gmail.com> |
---|---|
date | Sun, 03 May 2009 21:42:41 -0500 |
parents | 153266401676 |
children | 942f198b8ff5 |
line wrap: on
line diff
--- a/hg_delta_editor.py +++ b/hg_delta_editor.py @@ -448,7 +448,7 @@ class HgChangeReceiver(delta.Editor): return branch[3:] return 'branches/%s' % branch - def __determine_parent_branch(self, p, src_path, src_rev, revnum): + def _determine_parent_branch(self, p, src_path, src_rev, revnum): if src_path is not None: src_file, src_branch = self._path_and_branch_for_path(src_path) src_tag = self._is_path_tag(src_path) @@ -490,40 +490,46 @@ class HgChangeReceiver(delta.Editor): and t_name in self.tags): tags_to_delete.add(t_name) continue - # At this point we know the path is not a tag. In that case, we only care if it - # is the root of a new branch (in this function). This is determined by the - # following checks: - # 1. Is the file located inside any currently known branch? - # If yes, then we're done with it, this isn't interesting. - # 2. Does the file have copyfrom information that means it is a copy from the root - # of some other branch? - # If yes, then we're done: this is a new branch, and we record the copyfrom in - # added_branches - # 3. Neither of the above. This could be a branch, but it might never work out for - # us. It's only ever a branch (as far as we're concerned) if it gets committed - # to, which we have to detect at file-write time anyway. So we do nothing here. - # 4. It's the root of an already-known branch, with an action of 'D'. We mark the - # branch as deleted. - # 5. It's the parent directory of one or more already-known branches, so we mark them - # as deleted. - # 6. It's a branch being replaced by another branch - the action will be 'R'. + # At this point we know the path is not a tag. In that + # case, we only care if it is the root of a new branch (in + # this function). This is determined by the following + # checks: + # 1. Is the file located inside any currently known + # branch? If yes, then we're done with it, this isn't + # interesting. + # 2. Does the file have copyfrom information that means it + # is a copy from the root of some other branch? If + # yes, then we're done: this is a new branch, and we + # record the copyfrom in added_branches + # 3. Neither of the above. This could be a branch, but it + # might never work out for us. It's only ever a branch + # (as far as we're concerned) if it gets committed to, + # which we have to detect at file-write time anyway. So + # we do nothing here. + # 4. It's the root of an already-known branch, with an + # action of 'D'. We mark the branch as deleted. + # 5. It's the parent directory of one or more + # already-known branches, so we mark them as deleted. + # 6. It's a branch being replaced by another branch - the + # action will be 'R'. fi, br = self._path_and_branch_for_path(p) if fi is not None: if fi == '': if paths[p].action == 'D': self.branches_to_delete.add(br) # case 4 elif paths[p].action == 'R': - added_branches.update(self.__determine_parent_branch(p, paths[p].copyfrom_path, - paths[p].copyfrom_rev, - revision.revnum)) + parent = self._determine_parent_branch( + p, paths[p].copyfrom_path, paths[p].copyfrom_rev, + revision.revnum) + added_branches.update(parent) continue # case 1 if paths[p].action == 'D': - # check for case 5 for known in self.branches: if self._svnpath(known).startswith(p): self.branches_to_delete.add(known) # case 5 - added_branches.update(self.__determine_parent_branch(p, paths[p].copyfrom_path, - paths[p].copyfrom_rev, revision.revnum)) + parent = self._determine_parent_branch( + p, paths[p].copyfrom_path, paths[p].copyfrom_rev, revision.revnum) + added_branches.update(parent) for t in tags_to_delete: del self.tags[t] for br in self.branches_to_delete: