~bzr-pqm/bzr/bzr.dev

« back to all changes in this revision

Viewing changes to bzrlib/commit.py

Use global osutils, otherwise it creates a local var.

Which works, but causes us to run the import on every call.

Show diffs side-by-side

added added

removed removed

Lines of Context:
229
229
               message_callback=None,
230
230
               recursive='down',
231
231
               exclude=None,
232
 
               possible_master_transports=None,
233
 
               lossy=False):
 
232
               possible_master_transports=None):
234
233
        """Commit working copy as a new revision.
235
234
 
236
235
        :param message: the commit message (it or message_callback is required)
263
262
        :param exclude: None or a list of relative paths to exclude from the
264
263
            commit. Pending changes to excluded files will be ignored by the
265
264
            commit.
266
 
        :param lossy: When committing to a foreign VCS, ignore any
267
 
            data that can not be natively represented.
268
265
        """
269
266
        operation = OperationWithCleanups(self._commit)
270
267
        self.revprops = revprops or {}
286
283
               message_callback=message_callback,
287
284
               recursive=recursive,
288
285
               exclude=exclude,
289
 
               possible_master_transports=possible_master_transports,
290
 
               lossy=lossy)
 
286
               possible_master_transports=possible_master_transports)
291
287
 
292
288
    def _commit(self, operation, message, timestamp, timezone, committer,
293
289
            specific_files, rev_id, allow_pointless, strict, verbose,
294
290
            working_tree, local, reporter, message_callback, recursive,
295
 
            exclude, possible_master_transports, lossy):
 
291
            exclude, possible_master_transports):
296
292
        mutter('preparing to commit')
297
293
 
298
294
        if working_tree is None:
404
400
 
405
401
        # Collect the changes
406
402
        self._set_progress_stage("Collecting changes", counter=True)
407
 
        self._lossy = lossy
408
403
        self.builder = self.branch.get_commit_builder(self.parents,
409
 
            self.config, timestamp, timezone, committer, self.revprops,
410
 
            rev_id, lossy=lossy)
 
404
            self.config, timestamp, timezone, committer, self.revprops, rev_id)
411
405
        if not self.builder.supports_record_entry_contents and self.exclude:
412
406
            self.builder.abort()
413
407
            raise errors.ExcludesUnsupported(self.branch.repository)
455
449
            self._set_progress_stage("Uploading data to master branch")
456
450
            # 'commit' to the master first so a timeout here causes the
457
451
            # local branch to be out of date
458
 
            (new_revno, self.rev_id) = self.master_branch.import_last_revision_info_and_tags(
459
 
                self.branch, new_revno, self.rev_id, lossy=lossy)
460
 
            if lossy:
461
 
                self.branch.fetch(self.master_branch, self.rev_id)
 
452
            self.master_branch.import_last_revision_info_and_tags(
 
453
                self.branch, new_revno, self.rev_id)
462
454
 
463
455
        # and now do the commit locally.
464
456
        self.branch.set_last_revision_info(new_revno, self.rev_id)