comparison mercurial/dirstate.py @ 2661:5c10b7ed3411

status: add -c (clean) and -A (all files) options also add new localrepo.status what is more uniform than localrepo.changes. localrepo.changes is deprecated and will go away soon.
author Vadim Gelfer <vadim.gelfer@gmail.com>
date Thu, 20 Jul 2006 16:21:07 -0700
parents 3ea8111ead90
children 93eb49419760
comparison
equal deleted inserted replaced
2640:02b6fa7bbfbf 2661:5c10b7ed3411
432 ks.sort() 432 ks.sort()
433 for k in ks: 433 for k in ks:
434 if not seen(k) and (statmatch(k, None)): 434 if not seen(k) and (statmatch(k, None)):
435 yield 'm', k, None 435 yield 'm', k, None
436 436
437 def changes(self, files=None, match=util.always, show_ignored=None): 437 def status(self, files=None, match=util.always, list_ignored=False,
438 list_clean=False):
438 lookup, modified, added, unknown, ignored = [], [], [], [], [] 439 lookup, modified, added, unknown, ignored = [], [], [], [], []
439 removed, deleted = [], [] 440 removed, deleted, clean = [], [], []
440 441
441 for src, fn, st in self.statwalk(files, match, ignored=show_ignored): 442 for src, fn, st in self.statwalk(files, match, ignored=list_ignored):
442 try: 443 try:
443 type_, mode, size, time = self[fn] 444 type_, mode, size, time = self[fn]
444 except KeyError: 445 except KeyError:
445 if show_ignored and self.ignore(fn): 446 if list_ignored and self.ignore(fn):
446 ignored.append(fn) 447 ignored.append(fn)
447 else: 448 else:
448 unknown.append(fn) 449 unknown.append(fn)
449 continue 450 continue
450 if src == 'm': 451 if src == 'm':
471 if size >= 0 and (size != st.st_size 472 if size >= 0 and (size != st.st_size
472 or (mode ^ st.st_mode) & 0100): 473 or (mode ^ st.st_mode) & 0100):
473 modified.append(fn) 474 modified.append(fn)
474 elif time != st.st_mtime: 475 elif time != st.st_mtime:
475 lookup.append(fn) 476 lookup.append(fn)
477 elif list_clean:
478 clean.append(fn)
476 elif type_ == 'm': 479 elif type_ == 'm':
477 modified.append(fn) 480 modified.append(fn)
478 elif type_ == 'a': 481 elif type_ == 'a':
479 added.append(fn) 482 added.append(fn)
480 elif type_ == 'r': 483 elif type_ == 'r':
481 removed.append(fn) 484 removed.append(fn)
482 485
483 return (lookup, modified, added, removed, deleted, unknown, ignored) 486 return (lookup, modified, added, removed, deleted, unknown, ignored,
487 clean)