~bzr-pqm/bzr/bzr.dev

« back to all changes in this revision

Viewing changes to bzrlib/diff.py

  • Committer: Lukáš Lalinský
  • Date: 2008-08-28 13:41:15 UTC
  • mto: (3732.1.1 ianc-integration)
  • mto: This revision was merged to the branch mainline in revision 3733.
  • Revision ID: lalinsky@gmail.com-20080828134115-265uyumclq5qvetg
Fix `bzr st -rbranch:PATH_TO_BRANCH`

* Add RevisionSpec.as_tree which returns a tree representation of the revision specifier. This might return a remote revision tree.
* Make status use this new method and not require RevisionSpec.as_revision_id, which for RevisionSpec_branch fetches data to the local repository.
* Refactor common code for getting either a revision tree or a tree/branch's basis tree into a private function _get_revision_tree and make it use RevisionSpec.as_tree.

Show diffs side-by-side

added added

removed removed

Lines of Context:
370
370
                return branch.basis_tree()
371
371
        else:
372
372
            return tree
373
 
    if not spec.needs_branch():
374
 
        branch = _mod_branch.Branch.open(spec.get_branch())
375
 
    revision_id = spec.as_revision_id(branch)
376
 
    return branch.repository.revision_tree(revision_id)
 
373
    return spec.as_tree(branch)
377
374
 
378
375
 
379
376
def _relative_paths_in_tree(tree, paths):