/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 bzrlib/switch.py

  • Committer: John Arbash Meinel
  • Date: 2011-04-20 09:46:28 UTC
  • mfrom: (5609.33.4 2.3)
  • mto: (5609.33.5 2.3)
  • mto: This revision was merged to the branch mainline in revision 5811.
  • Revision ID: john@arbash-meinel.com-20110420094628-l0bafq1lwb6ib1v2
Merge lp:bzr/2.3 @ 5640 so we can update the release notes (aka NEWS)

Show diffs side-by-side

added added

removed removed

Lines of Context:
21
21
from bzrlib.trace import note
22
22
 
23
23
 
 
24
def _run_post_switch_hooks(control_dir, to_branch, force, revision_id):
 
25
    from bzrlib.branch import SwitchHookParams
 
26
    hooks = Branch.hooks['post_switch']
 
27
    if not hooks:
 
28
        return
 
29
    params = SwitchHookParams(control_dir, to_branch, force, revision_id)
 
30
    for hook in hooks:
 
31
        hook(params)
 
32
 
24
33
def switch(control_dir, to_branch, force=False, quiet=False, revision_id=None):
25
34
    """Switch the branch associated with a checkout.
26
35
 
37
46
    _set_branch_location(control_dir, to_branch, force)
38
47
    tree = control_dir.open_workingtree()
39
48
    _update(tree, source_repository, quiet, revision_id)
40
 
 
 
49
    _run_post_switch_hooks(control_dir, to_branch, force, revision_id)
41
50
 
42
51
def _check_pending_merges(control, force=False):
43
52
    """Check that there are no outstanding pending merges before switching.
69
78
    branch_format = control.find_branch_format()
70
79
    if branch_format.get_reference(control) is not None:
71
80
        # Lightweight checkout: update the branch reference
72
 
        branch_format.set_reference(control, to_branch)
 
81
        branch_format.set_reference(control, None, to_branch)
73
82
    else:
74
83
        b = control.open_branch()
75
84
        bound_branch = b.get_bound_location()