equal
deleted
inserted
replaced
534 if self.dirstate.state(f) not in 'ai': |
534 if self.dirstate.state(f) not in 'ai': |
535 self.ui.warn(_("%s not added!\n") % f) |
535 self.ui.warn(_("%s not added!\n") % f) |
536 else: |
536 else: |
537 self.dirstate.forget([f]) |
537 self.dirstate.forget([f]) |
538 |
538 |
539 def remove(self, list): |
539 def remove(self, list, unlink=False): |
|
540 if unlink: |
|
541 for f in list: |
|
542 try: |
|
543 util.unlink(self.wjoin(f)) |
|
544 except OSError, inst: |
|
545 if inst.errno != errno.ENOENT: raise |
540 for f in list: |
546 for f in list: |
541 p = self.wjoin(f) |
547 p = self.wjoin(f) |
542 if os.path.exists(p): |
548 if os.path.exists(p): |
543 self.ui.warn(_("%s still exists!\n") % f) |
549 self.ui.warn(_("%s still exists!\n") % f) |
544 elif self.dirstate.state(f) == 'a': |
550 elif self.dirstate.state(f) == 'a': |
1262 |
1268 |
1263 remove.sort() |
1269 remove.sort() |
1264 for f in remove: |
1270 for f in remove: |
1265 self.ui.note(_("removing %s\n") % f) |
1271 self.ui.note(_("removing %s\n") % f) |
1266 try: |
1272 try: |
1267 os.unlink(self.wjoin(f)) |
1273 util.unlink(self.wjoin(f)) |
1268 except OSError, inst: |
1274 except OSError, inst: |
1269 if inst.errno != errno.ENOENT: |
1275 if inst.errno != errno.ENOENT: |
1270 self.ui.warn(_("update failed to remove %s: %s!\n") % |
1276 self.ui.warn(_("update failed to remove %s: %s!\n") % |
1271 (f, inst.strerror)) |
1277 (f, inst.strerror)) |
1272 # try removing directories that might now be empty |
|
1273 try: os.removedirs(os.path.dirname(self.wjoin(f))) |
|
1274 except: pass |
|
1275 if moddirstate: |
1278 if moddirstate: |
1276 if branch_merge: |
1279 if branch_merge: |
1277 self.dirstate.update(remove, 'r') |
1280 self.dirstate.update(remove, 'r') |
1278 else: |
1281 else: |
1279 self.dirstate.forget(remove) |
1282 self.dirstate.forget(remove) |