comparison hgext/mq.py @ 4334:1cc5fc1d0994

Merge with crew-stable.
author Alexis S. L. Carvalho <alexis@cecm.usp.br>
date Mon, 09 Apr 2007 04:57:25 -0300
parents 815ad65cfca9 4e5e1638b165
children 077aafddd35f
comparison
equal deleted inserted replaced
4325:aa26759c6fb3 4334:1cc5fc1d0994
469 469
470 (patcherr, files, fuzz) = self.patch(repo, pf) 470 (patcherr, files, fuzz) = self.patch(repo, pf)
471 patcherr = not patcherr 471 patcherr = not patcherr
472 472
473 if merge and files: 473 if merge and files:
474 # Mark as merged and update dirstate parent info 474 # Mark as removed/merged and update dirstate parent info
475 repo.dirstate.update(repo.dirstate.filterfiles(files.keys()), 'm') 475 removed = []
476 merged = []
477 for f in files:
478 if os.path.exists(repo.dirstate.wjoin(f)):
479 merged.append(f)
480 else:
481 removed.append(f)
482 repo.dirstate.update(repo.dirstate.filterfiles(removed), 'r')
483 repo.dirstate.update(repo.dirstate.filterfiles(merged), 'm')
476 p1, p2 = repo.dirstate.parents() 484 p1, p2 = repo.dirstate.parents()
477 repo.dirstate.setparents(p1, merge) 485 repo.dirstate.setparents(p1, merge)
478 files = patch.updatedir(self.ui, repo, files, wlock=wlock) 486 files = patch.updatedir(self.ui, repo, files, wlock=wlock)
479 n = repo.commit(files, message, user, date, force=1, lock=lock, 487 n = repo.commit(files, message, user, date, force=1, lock=lock,
480 wlock=wlock) 488 wlock=wlock)