/brz/remove-bazaar

To get this branch, use:
bzr branch http://gegoxaren.bato24.eu/bzr/brz/remove-bazaar

« back to all changes in this revision

Viewing changes to breezy/transform.py

  • Committer: Jelmer Vernooij
  • Date: 2018-06-11 11:08:35 UTC
  • mfrom: (6969.3.4 unlock)
  • Revision ID: jelmer@jelmer.uk-20180611110835-k1ocwg2rdb95po9q
merge lp:~jelmer/brz/unlock-1

Show diffs side-by-side

added added

removed removed

Lines of Context:
2824
2824
def revert(working_tree, target_tree, filenames, backups=False,
2825
2825
           pb=None, change_reporter=None):
2826
2826
    """Revert a working tree's contents to those of a target tree."""
2827
 
    target_tree.lock_read()
2828
2827
    pb = ui.ui_factory.nested_progress_bar()
2829
 
    tt = TreeTransform(working_tree, pb)
2830
2828
    try:
2831
 
        pp = ProgressPhase("Revert phase", 3, pb)
2832
 
        conflicts, merge_modified = _prepare_revert_transform(
2833
 
            working_tree, target_tree, tt, filenames, backups, pp)
2834
 
        if change_reporter:
2835
 
            change_reporter = delta._ChangeReporter(
2836
 
                unversioned_filter=working_tree.is_ignored)
2837
 
            delta.report_changes(tt.iter_changes(), change_reporter)
2838
 
        for conflict in conflicts:
2839
 
            trace.warning(unicode(conflict))
2840
 
        pp.next_phase()
2841
 
        tt.apply()
2842
 
        if working_tree.supports_merge_modified():
2843
 
            working_tree.set_merge_modified(merge_modified)
 
2829
        with target_tree.lock_read(), TreeTransform(working_tree, pb) as tt:
 
2830
            pp = ProgressPhase("Revert phase", 3, pb)
 
2831
            conflicts, merge_modified = _prepare_revert_transform(
 
2832
                working_tree, target_tree, tt, filenames, backups, pp)
 
2833
            if change_reporter:
 
2834
                change_reporter = delta._ChangeReporter(
 
2835
                    unversioned_filter=working_tree.is_ignored)
 
2836
                delta.report_changes(tt.iter_changes(), change_reporter)
 
2837
            for conflict in conflicts:
 
2838
                trace.warning(unicode(conflict))
 
2839
            pp.next_phase()
 
2840
            tt.apply()
 
2841
            if working_tree.supports_merge_modified():
 
2842
                working_tree.set_merge_modified(merge_modified)
2844
2843
    finally:
2845
 
        target_tree.unlock()
2846
 
        tt.finalize()
2847
2844
        pb.clear()
2848
2845
    return conflicts
2849
2846