tests/test-flags.out
author Bryan O'Sullivan <bos@serpentine.com>
Fri, 29 Jul 2005 08:42:28 -0800
changeset 809 d0fb9efa2b2d
parent 784 853bfbf1a312
child 793 445970ccf57a
child 808 8f5637f0a0c0
child 814 0902ffece4b4
permissions -rw-r--r--
Fix performance regression in addremove command. When I rewrote addremove, I lazily put a call to repo.changes in, which was unnecessary and slow. This is a new rewrite, preserving the file name behaviour, but replacing the call to repo.changes with a walk, which is much cheaper, and avoids calls to os.stat on all but files that have probably been deleted.

+ umask 027
+ mkdir test1
+ cd test1
+ hg init
+ touch a b
+ hg add a b
+ hg ci -m 'added a b' -d '0 0'
+ cd ..
+ mkdir test2
+ cd test2
+ hg init
+ hg pull ../test1
pulling from ../test1
requesting all changes
adding changesets
adding manifests
adding file changes
added 1 changesets with 2 changes to 2 files
(run 'hg update' to get a working copy)
+ hg co
+ chmod +x a
+ hg ci -m 'chmod +x a' -d '0 0'
+ cd ../test1
+ echo 123
+ hg ci -m 'a updated' -d '0 0'
+ hg pull ../test2
pulling from ../test2
searching for changes
adding changesets
adding manifests
adding file changes
added 1 changesets with 1 changes to 1 files
(run 'hg update' to get a working copy)
+ hg heads
changeset:   2:3ef543305655
tag:         tip
parent:      0:22a449e20da5
user:        test
date:        Thu Jan  1 00:00:00 1970
summary:     chmod +x a

changeset:   1:c6ecefc45368
user:        test
date:        Thu Jan  1 00:00:00 1970
summary:     a updated

+ hg history
changeset:   2:3ef543305655
tag:         tip
parent:      0:22a449e20da5
user:        test
date:        Thu Jan  1 00:00:00 1970
summary:     chmod +x a

changeset:   1:c6ecefc45368
user:        test
date:        Thu Jan  1 00:00:00 1970
summary:     a updated

changeset:   0:22a449e20da5
user:        test
date:        Thu Jan  1 00:00:00 1970
summary:     added a b

+ hg -v co -m
resolving manifests
merging a
resolving a
+ ls -l ../test1/a ../test2/a
+ cut -b 0-10
-rwxr-x---
-rwxr-x---