~bzr-pqm/bzr/bzr.dev

« back to all changes in this revision

Viewing changes to bzrlib/foreign.py

  • Committer: Martin Pool
  • Date: 2010-04-01 04:41:18 UTC
  • mto: This revision was merged to the branch mainline in revision 5128.
  • Revision ID: mbp@sourcefrog.net-20100401044118-shyctqc02ob08ngz
ignore .testrepository

Show diffs side-by-side

added added

removed removed

Lines of Context:
259
259
 
260
260
 
261
261
class cmd_dpush(Command):
262
 
    __doc__ = """Push into a different VCS without any custom bzr metadata.
 
262
    """Push into a different VCS without any custom bzr metadata.
263
263
 
264
264
    This will afterwards rebase the local branch on the remote
265
265
    branch unless the --no-rebase option is used, in which case 
296
296
        except NoWorkingTree:
297
297
            source_branch = Branch.open(directory)
298
298
            source_wt = None
299
 
        if source_wt is not None:
300
 
            source_wt.check_changed_or_out_of_date(
301
 
                strict, 'dpush_strict',
302
 
                more_error='Use --no-strict to force the push.',
303
 
                more_warning='Uncommitted changes will not be pushed.')
 
299
        if strict is None:
 
300
            strict = source_branch.get_config(
 
301
                ).get_user_option_as_bool('dpush_strict')
 
302
        if strict is None: strict = True # default value
 
303
        if strict and source_wt is not None:
 
304
            if (source_wt.has_changes()):
 
305
                raise errors.UncommittedChanges(
 
306
                    source_wt, more='Use --no-strict to force the push.')
 
307
            if source_wt.last_revision() != source_wt.branch.last_revision():
 
308
                # The tree has lost sync with its branch, there is little
 
309
                # chance that the user is aware of it but he can still force
 
310
                # the push with --no-strict
 
311
                raise errors.OutOfDateTree(
 
312
                    source_wt, more='Use --no-strict to force the push.')
304
313
        stored_loc = source_branch.get_push_location()
305
314
        if location is None:
306
315
            if stored_loc is None: