~bzr-pqm/bzr/bzr.dev

« back to all changes in this revision

Viewing changes to bzrlib/branch.py

(jelmer) Mention the number of tags that was pushed/pull,
 if any. (Jelmer Vernooij)

Show diffs side-by-side

added added

removed removed

Lines of Context:
3044
3044
    :ivar local_branch: target branch if there is a Master, else None
3045
3045
    :ivar target_branch: Target/destination branch object. (write locked)
3046
3046
    :ivar tag_conflicts: A list of tag conflicts, see BasicTags.merge_to
 
3047
    :ivar tag_updates: A dict with new tags, see BasicTags.merge_to
3047
3048
    """
3048
3049
 
3049
3050
    @deprecated_method(deprecated_in((2, 3, 0)))
3055
3056
        return self.new_revno - self.old_revno
3056
3057
 
3057
3058
    def report(self, to_file):
 
3059
        tag_conflicts = getattr(self, "tag_conflicts", None)
 
3060
        tag_updates = getattr(self, "tag_updates", None)
3058
3061
        if not is_quiet():
3059
 
            if self.old_revid == self.new_revid:
3060
 
                to_file.write('No revisions to pull.\n')
3061
 
            else:
 
3062
            if self.old_revid != self.new_revid:
3062
3063
                to_file.write('Now on revision %d.\n' % self.new_revno)
 
3064
            if tag_updates:
 
3065
                to_file.write('%d tag(s) updated.\n' % len(tag_updates))
 
3066
            if self.old_revid == self.new_revid and not tag_updates:
 
3067
                if not tag_conflicts:
 
3068
                    to_file.write('No revisions or tags to pull.\n')
 
3069
                else:
 
3070
                    to_file.write('No revisions to pull.\n')
3063
3071
        self._show_tag_conficts(to_file)
3064
3072
 
3065
3073
 
3091
3099
        return self.new_revno - self.old_revno
3092
3100
 
3093
3101
    def report(self, to_file):
3094
 
        """Write a human-readable description of the result."""
3095
 
        if self.old_revid == self.new_revid:
3096
 
            note('No new revisions to push.')
3097
 
        else:
3098
 
            note('Pushed up to revision %d.' % self.new_revno)
 
3102
        # TODO: This function gets passed a to_file, but then
 
3103
        # ignores it and calls note() instead. This is also
 
3104
        # inconsistent with PullResult(), which writes to stdout.
 
3105
        # -- JRV20110901, bug #838853
 
3106
        tag_conflicts = getattr(self, "tag_conflicts", None)
 
3107
        tag_updates = getattr(self, "tag_updates", None)
 
3108
        if not is_quiet():
 
3109
            if self.old_revid != self.new_revid:
 
3110
                note('Pushed up to revision %d.' % self.new_revno)
 
3111
            if tag_updates:
 
3112
                note('%d tag(s) updated.' % len(tag_updates))
 
3113
            if self.old_revid == self.new_revid and not tag_updates:
 
3114
                if not tag_conflicts:
 
3115
                    note('No new revisions or tags to push.')
 
3116
                else:
 
3117
                    note('No new revisions to push.')
3099
3118
        self._show_tag_conficts(to_file)
3100
3119
 
3101
3120
 
3409
3428
            self._update_revisions(stop_revision, overwrite=overwrite,
3410
3429
                    graph=graph)
3411
3430
        if self.source._push_should_merge_tags():
3412
 
            result.tag_conflicts = self.source.tags.merge_to(self.target.tags,
3413
 
                overwrite)
 
3431
            result.tag_updates, result.tag_conflicts = (
 
3432
                self.source.tags.merge_to(self.target.tags, overwrite))
3414
3433
        result.new_revno, result.new_revid = self.target.last_revision_info()
3415
3434
        return result
3416
3435
 
3499
3518
            # TODO: The old revid should be specified when merging tags, 
3500
3519
            # so a tags implementation that versions tags can only 
3501
3520
            # pull in the most recent changes. -- JRV20090506
3502
 
            result.tag_conflicts = self.source.tags.merge_to(self.target.tags,
3503
 
                overwrite, ignore_master=not merge_tags_to_master)
 
3521
            result.tag_updates, result.tag_conflicts = (
 
3522
                self.source.tags.merge_to(self.target.tags, overwrite,
 
3523
                    ignore_master=not merge_tags_to_master))
3504
3524
            result.new_revno, result.new_revid = self.target.last_revision_info()
3505
3525
            if _hook_master:
3506
3526
                result.master_branch = _hook_master