2885 ('', 'datesort', None, _('sort by saved mtime'))], |
2885 ('', 'datesort', None, _('sort by saved mtime'))], |
2886 _('[OPTION]...')) |
2886 _('[OPTION]...')) |
2887 def debugstate(ui, repo, nodates=None, datesort=None): |
2887 def debugstate(ui, repo, nodates=None, datesort=None): |
2888 """show the contents of the current dirstate""" |
2888 """show the contents of the current dirstate""" |
2889 timestr = "" |
2889 timestr = "" |
2890 showdate = not nodates |
|
2891 if datesort: |
2890 if datesort: |
2892 keyfunc = lambda x: (x[1][3], x[0]) # sort by mtime, then by filename |
2891 keyfunc = lambda x: (x[1][3], x[0]) # sort by mtime, then by filename |
2893 else: |
2892 else: |
2894 keyfunc = None # sort by filename |
2893 keyfunc = None # sort by filename |
2895 for file_, ent in sorted(repo.dirstate._map.iteritems(), key=keyfunc): |
2894 for file_, ent in sorted(repo.dirstate._map.iteritems(), key=keyfunc): |
2896 if showdate: |
2895 if ent[3] == -1: |
2897 if ent[3] == -1: |
2896 timestr = 'unset ' |
2898 timestr = 'unset ' |
2897 elif nodates: |
2899 else: |
2898 timestr = 'set ' |
2900 timestr = time.strftime("%Y-%m-%d %H:%M:%S ", |
2899 else: |
2901 time.localtime(ent[3])) |
2900 timestr = time.strftime("%Y-%m-%d %H:%M:%S ", |
|
2901 time.localtime(ent[3])) |
2902 if ent[1] & 020000: |
2902 if ent[1] & 020000: |
2903 mode = 'lnk' |
2903 mode = 'lnk' |
2904 else: |
2904 else: |
2905 mode = '%3o' % (ent[1] & 0777 & ~util.umask) |
2905 mode = '%3o' % (ent[1] & 0777 & ~util.umask) |
2906 ui.write("%c %s %10d %s%s\n" % (ent[0], mode, ent[2], timestr, file_)) |
2906 ui.write("%c %s %10d %s%s\n" % (ent[0], mode, ent[2], timestr, file_)) |