291
@deprecated_function(deprecated_in((2, 2, 0)))
292
def get_trees_and_branches_to_diff(path_list, revision_specs, old_url, new_url,
294
"""Get the trees and specific files to diff given a list of paths.
296
This method works out the trees to be diff'ed and the files of
297
interest within those trees.
300
the list of arguments passed to the diff command
301
:param revision_specs:
302
Zero, one or two RevisionSpecs from the diff command line,
303
saying what revisions to compare.
305
The url of the old branch or tree. If None, the tree to use is
306
taken from the first path, if any, or the current working tree.
308
The url of the new branch or tree. If None, the tree to use is
309
taken from the first path, if any, or the current working tree.
311
if True and a view is set, apply the view or check that the paths
314
a tuple of (old_tree, new_tree, old_branch, new_branch,
315
specific_files, extra_trees) where extra_trees is a sequence of
316
additional trees to search in for file-ids. The trees and branches
319
op = cleanup.OperationWithCleanups(get_trees_and_branches_to_diff_locked)
320
return op.run_simple(path_list, revision_specs, old_url, new_url,
321
op.add_cleanup, apply_view=apply_view)
287
324
def get_trees_and_branches_to_diff_locked(
288
325
path_list, revision_specs, old_url, new_url, add_cleanup, apply_view=True):
289
326
"""Get the trees and specific files to diff given a list of paths.
399
436
extra_trees = None
400
437
if working_tree is not None and working_tree not in (old_tree, new_tree):
401
438
extra_trees = (working_tree,)
402
return (old_tree, new_tree, old_branch, new_branch,
403
specific_files, extra_trees)
439
return old_tree, new_tree, old_branch, new_branch, specific_files, extra_trees
406
442
def _get_tree_to_diff(spec, tree=None, branch=None, basis_is_default=True):