view tests/test-push-hook-lock.t @ 18558:eb95cf4e219d

addremove: only query dirstate once per path Previously the addremove code queried the dirstate 4 times per path. Now it only does so once. On a large repo this brings addremove from 9.5 seconds to 8.35 seconds (12%).
author Durham Goode <durham@fb.com>
date Mon, 04 Feb 2013 14:01:40 -0800
parents 28e2e3804f2e
children 4e0b696a1cb3
line wrap: on
line source

  $ hg init 1

  $ echo '[ui]' >> 1/.hg/hgrc
  $ echo 'timeout = 10' >> 1/.hg/hgrc

  $ echo foo > 1/foo
  $ hg --cwd 1 ci -A -m foo
  adding foo

  $ hg clone 1 2
  updating to branch default
  1 files updated, 0 files merged, 0 files removed, 0 files unresolved

  $ hg clone 2 3
  updating to branch default
  1 files updated, 0 files merged, 0 files removed, 0 files unresolved

  $ echo '[hooks]' >> 2/.hg/hgrc
  $ echo 'changegroup.push = hg push -qf ../1' >> 2/.hg/hgrc

  $ echo bar >> 3/foo
  $ hg --cwd 3 ci -m bar

  $ hg --cwd 3 push ../2
  pushing to ../2
  searching for changes
  adding changesets
  adding manifests
  adding file changes
  added 1 changesets with 1 changes to 1 files