##// END OF EJS Templates
Optimize diff and status in subdirectories...
mpm@selenic.com -
r312:09375250 default
parent child Browse files
Show More
@@ -32,7 +32,7 b' def relpath(repo, args):'
32 32 return [ os.path.normpath(os.path.join(p, x)) for x in args ]
33 33 return args
34 34
35 def dodiff(repo, files = None, node1 = None, node2 = None):
35 def dodiff(repo, path, files = None, node1 = None, node2 = None):
36 36 def date(c):
37 37 return time.asctime(time.gmtime(float(c[2].split(' ')[0])))
38 38
@@ -44,7 +44,7 b' def dodiff(repo, files = None, node1 = N'
44 44 date2 = date(change)
45 45 else:
46 46 date2 = time.asctime()
47 (c, a, d, u) = repo.diffdir(repo.root, node1)
47 (c, a, d, u) = repo.diffdir(path, node1)
48 48 if not node1:
49 49 node1 = repo.dirstate.parents()[0]
50 50 def read(f): return file(os.path.join(repo.root, f)).read()
@@ -224,7 +224,7 b' def diff(ui, repo, *files, **opts):'
224 224 else:
225 225 files = relpath(repo, [""])
226 226
227 dodiff(repo, files, *revs)
227 dodiff(repo, os.getcwd(), files, *revs)
228 228
229 229 def export(ui, repo, changeset):
230 230 """dump the changeset header and diffs for a revision"""
@@ -241,7 +241,7 b' def export(ui, repo, changeset):'
241 241 print change[4].rstrip()
242 242 print
243 243
244 dodiff(repo, None, prev, node)
244 dodiff(repo, "", None, prev, node)
245 245
246 246 def forget(ui, repo, file, *files):
247 247 """don't add the specified files on the next commit"""
@@ -449,8 +449,8 b' def status(ui, repo):'
449 449 A = added
450 450 R = removed
451 451 ? = not tracked'''
452
453 (c, a, d, u) = repo.diffdir(repo.root)
452
453 (c, a, d, u) = repo.diffdir(os.getcwd())
454 454 (c, a, d, u) = map(lambda x: relfilter(repo, x), (c, a, d, u))
455 455
456 456 for f in c: print "C", f
@@ -551,7 +551,7 b' class localrepository:'
551 551 t2 = self.file(fn).revision(mf[fn])
552 552 return cmp(t1, t2)
553 553
554 for dir, subdirs, files in os.walk(self.root):
554 for dir, subdirs, files in os.walk(path):
555 555 d = dir[len(self.root)+1:]
556 556 if ".hg" in subdirs: subdirs.remove(".hg")
557 557
General Comments 0
You need to be logged in to leave comments. Login now