~bzr-pqm/bzr/bzr.dev

« back to all changes in this revision

Viewing changes to bzrlib/merge.py

Merge integration.

Show diffs side-by-side

added added

removed removed

Lines of Context:
244
244
        base_tree = branch.working_tree()
245
245
    else:
246
246
        if local_branch is not None:
247
 
            greedy_fetch(local_branch, branch, revision)
 
247
            if local_branch.base != branch.base:
 
248
                greedy_fetch(local_branch, branch, revision)
248
249
            base_tree = local_branch.repository.revision_tree(revision)
249
250
        else:
250
251
            base_tree = branch.repository.revision_tree(revision)
510
511
            self.other_basis = other_branch.last_revision()
511
512
            if self.other_basis is None:
512
513
                raise NoCommits(other_branch)
513
 
        fetch(from_branch=other_branch, to_branch=self.this_branch, 
514
 
              last_revision=self.other_basis)
 
514
        if other_branch.base != self.this_branch.base:
 
515
            fetch(from_branch=other_branch, to_branch=self.this_branch, 
 
516
                  last_revision=self.other_basis)
515
517
 
516
518
    def set_base(self, base_revision):
517
519
        mutter("doing merge() with no base_revision specified")