662 if not lock: |
662 if not lock: |
663 lock = self.lock() |
663 lock = self.lock() |
664 tr = self.transaction() |
664 tr = self.transaction() |
665 |
665 |
666 # check in files |
666 # check in files |
667 new = {} |
667 new = [] |
668 linkrev = self.changelog.count() |
668 linkrev = self.changelog.count() |
669 commit.sort() |
669 commit.sort() |
670 for f in commit: |
670 for f in commit: |
671 self.ui.note(f + "\n") |
671 self.ui.note(f + "\n") |
672 try: |
672 try: |
673 new[f] = self.filecommit(f, m1, m2, linkrev, tr, changed) |
673 m1[f] = self.filecommit(f, m1, m2, linkrev, tr, changed) |
674 m1.set(f, util.is_exec(self.wjoin(f), m1.execf(f))) |
674 m1.set(f, util.is_exec(self.wjoin(f), m1.execf(f))) |
|
675 new.append(f) |
675 except IOError: |
676 except IOError: |
676 self.ui.warn(_("trouble committing %s!\n") % f) |
677 self.ui.warn(_("trouble committing %s!\n") % f) |
677 raise |
678 raise |
678 |
679 |
679 # update manifest |
680 # update manifest |
680 m1.update(new) |
681 remove.sort() |
|
682 |
681 for f in remove: |
683 for f in remove: |
682 if f in m1: |
684 if f in m1: |
683 del m1[f] |
685 del m1[f] |
684 mn = self.manifest.add(m1, tr, linkrev, c1[0], c2[0], (new, remove)) |
686 mn = self.manifest.add(m1, tr, linkrev, c1[0], c2[0], (new, remove)) |
685 |
687 |
686 # add changeset |
688 # add changeset |
687 new = new.keys() |
|
688 new.sort() |
|
689 |
|
690 user = user or self.ui.username() |
689 user = user or self.ui.username() |
691 if not text or force_editor: |
690 if not text or force_editor: |
692 edittext = [] |
691 edittext = [] |
693 if text: |
692 if text: |
694 edittext.append(text) |
693 edittext.append(text) |