.hgignore
author Pierre-Yves David <pierre-yves.david@octobus.net>
Tue, 15 Oct 2019 18:23:34 +0200
changeset 43300 ffd04bc9f57d
parent 39967 aab43d5861bb
child 43471 8492c6293c31
permissions -rw-r--r--
copies: move from a copy on branchpoint to a copy on write approach Before this changes, any branch points results in a copy of the dictionary containing the copy information. This can be very costly for branchy history with few rename information. Instead, we take a "copy on write" approach. Copying the input data only when we are about to update them. In practice we where already doing the copying in half of these case (because `_chain` makes a copy), so we don't add a significant cost here even in the linear case. However the speed up in branchy case is very significant. Here are some timing on the pypy repository. revision: large amount; added files: large amount; rename small amount; c3b14617fbd7 9ba6ab77fd29 before: ! wall 1.399863 comb 1.400000 user 1.370000 sys 0.030000 (median of 10) after: ! wall 0.766453 comb 0.770000 user 0.750000 sys 0.020000 (median of 11) revision: large amount; added files: small amount; rename small amount; c3b14617fbd7 f650a9b140d2 before: ! wall 1.876748 comb 1.890000 user 1.870000 sys 0.020000 (median of 10) after: ! wall 1.167223 comb 1.170000 user 1.150000 sys 0.020000 (median of 10) revision: large amount; added files: large amount; rename large amount; 08ea3258278e d9fa043f30c0 before: ! wall 0.242457 comb 0.240000 user 0.240000 sys 0.000000 (median of 39) after: ! wall 0.211476 comb 0.210000 user 0.210000 sys 0.000000 (median of 45) revision: small amount; added files: large amount; rename large amount; df6f7a526b60 a83dc6a2d56f before: ! wall 0.013193 comb 0.020000 user 0.020000 sys 0.000000 (median of 224) after: ! wall 0.013290 comb 0.010000 user 0.010000 sys 0.000000 (median of 222) revision: small amount; added files: large amount; rename small amount; 4aa4e1f8e19a 169138063d63 before: ! wall 0.001673 comb 0.000000 user 0.000000 sys 0.000000 (median of 1000) after: ! wall 0.001677 comb 0.000000 user 0.000000 sys 0.000000 (median of 1000) revision: small amount; added files: small amount; rename small amount; 4bc173b045a6 964879152e2e before: ! wall 0.000119 comb 0.000000 user 0.000000 sys 0.000000 (median of 8023) after: ! wall 0.000119 comb 0.000000 user 0.000000 sys 0.000000 (median of 7997) revision: medium amount; added files: large amount; rename medium amount; c95f1ced15f2 2c68e87c3efe before: ! wall 0.201898 comb 0.210000 user 0.200000 sys 0.010000 (median of 48) after: ! wall 0.167415 comb 0.170000 user 0.160000 sys 0.010000 (median of 58) revision: medium amount; added files: medium amount; rename small amount; d343da0c55a8 d7746d32bf9d before: ! wall 0.036820 comb 0.040000 user 0.040000 sys 0.000000 (median of 100) after: ! wall 0.035797 comb 0.040000 user 0.040000 sys 0.000000 (median of 100) The extra cost in the linear case can be reclaimed later with some extra logic. Differential Revision: https://phab.mercurial-scm.org/D7124
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
1270
fc3b41570082 Switch to new syntax for .hgignore files.
Bryan O'Sullivan <bos@serpentine.com>
parents: 981
diff changeset
     1
syntax: glob
fc3b41570082 Switch to new syntax for .hgignore files.
Bryan O'Sullivan <bos@serpentine.com>
parents: 981
diff changeset
     2
fc3b41570082 Switch to new syntax for .hgignore files.
Bryan O'Sullivan <bos@serpentine.com>
parents: 981
diff changeset
     3
*.elc
19991
ce5d711475a3 Makefile: do update on a temporary copy of a po file
Simon Heimberg <simohe@besonet.ch>
parents: 19426
diff changeset
     4
*.tmp
1270
fc3b41570082 Switch to new syntax for .hgignore files.
Bryan O'Sullivan <bos@serpentine.com>
parents: 981
diff changeset
     5
*.orig
fc3b41570082 Switch to new syntax for .hgignore files.
Bryan O'Sullivan <bos@serpentine.com>
parents: 981
diff changeset
     6
*.rej
fc3b41570082 Switch to new syntax for .hgignore files.
Bryan O'Sullivan <bos@serpentine.com>
parents: 981
diff changeset
     7
*~
5019
e6cc4d4f5a81 Ignore mergebackup files generated by mpatch
Bryan O'Sullivan <bos@serpentine.com>
parents: 2987
diff changeset
     8
*.mergebackup
2341
dbbe7f72d15a contrib: add restricted shell.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents: 2151
diff changeset
     9
*.o
1270
fc3b41570082 Switch to new syntax for .hgignore files.
Bryan O'Sullivan <bos@serpentine.com>
parents: 981
diff changeset
    10
*.so
13643
537899158396 hgignore: ignore dll files generated under cygwin
Craig Leres <leres@ee.lbl.gov>
parents: 13346
diff changeset
    11
*.dll
17115
b52d08b930c5 hgignore: simply ignore all *.exe's everywhere
Adrian Buehlmann <adrian@cadifra.com>
parents: 16537
diff changeset
    12
*.exe
6551
4a064e1977f8 ignore *.pyd files
Adrian Buehlmann <adrian@cadifra.com>
parents: 5693
diff changeset
    13
*.pyd
1270
fc3b41570082 Switch to new syntax for .hgignore files.
Bryan O'Sullivan <bos@serpentine.com>
parents: 981
diff changeset
    14
*.pyc
13346
91fe769ac84e hgignore: ignore more bytecode
Simon Heimberg <simohe@besonet.ch>
parents: 11380
diff changeset
    15
*.pyo
91fe769ac84e hgignore: ignore more bytecode
Simon Heimberg <simohe@besonet.ch>
parents: 11380
diff changeset
    16
*$py.class
1270
fc3b41570082 Switch to new syntax for .hgignore files.
Bryan O'Sullivan <bos@serpentine.com>
parents: 981
diff changeset
    17
*.swp
fc3b41570082 Switch to new syntax for .hgignore files.
Bryan O'Sullivan <bos@serpentine.com>
parents: 981
diff changeset
    18
*.prof
17274
2426ec322cd1 hgignore: ignore zip files
Adrian Buehlmann <adrian@cadifra.com>
parents: 17115
diff changeset
    19
*.zip
8147
441dc7becd43 win32text: be more careful about rejecting violating changesets
Bryan O'Sullivan <bos@serpentine.com>
parents: 7706
diff changeset
    20
\#*\#
441dc7becd43 win32text: be more careful about rejecting violating changesets
Bryan O'Sullivan <bos@serpentine.com>
parents: 7706
diff changeset
    21
.\#*
39491
4ca7a67c94c8 sparse-revlog: add a test checking revlog deltas for a churning file
Boris Feld <boris.feld@octobus.net>
parents: 38459
diff changeset
    22
tests/artifacts/cache/big-file-churn.hg
2068
4a49daa3a40c let run-tests run optional code coverage tests.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents: 1817
diff changeset
    23
tests/.coverage*
27634
a1eff44c432b tests: write recent run times to a file named tests/.testtimes
Bryan O'Sullivan <bos@serpentine.com>
parents: 22945
diff changeset
    24
tests/.testtimes*
28255
f75f7d39cca3 testing: generate tests operations using Hypothesis
David R. MacIver <david@drmaciver.com>
parents: 28061
diff changeset
    25
tests/.hypothesis
f75f7d39cca3 testing: generate tests operations using Hypothesis
David R. MacIver <david@drmaciver.com>
parents: 28061
diff changeset
    26
tests/hypothesis-generated
2151
0ce3cd330996 Ignore annotated coverage output of run-tests.py -C
Thomas Arendsen Hein <thomas@intevation.de>
parents: 2068
diff changeset
    27
tests/annotated
35190
bd8875b6473c run-tests: mechanism to report exceptions during test execution
Gregory Szorc <gregory.szorc@gmail.com>
parents: 33033
diff changeset
    28
tests/exceptions
1270
fc3b41570082 Switch to new syntax for .hgignore files.
Bryan O'Sullivan <bos@serpentine.com>
parents: 981
diff changeset
    29
tests/*.err
15859
44a371823f83 tests: add htmlcov option
Markus Zapke-Gründemann <info@keimlink.de>
parents: 15702
diff changeset
    30
tests/htmlcov
1270
fc3b41570082 Switch to new syntax for .hgignore files.
Bryan O'Sullivan <bos@serpentine.com>
parents: 981
diff changeset
    31
build
28061
3753d2e1759b hgignore: ignore chg binary
Yuya Nishihara <yuya@tcha.org>
parents: 27634
diff changeset
    32
contrib/chg/chg
2341
dbbe7f72d15a contrib: add restricted shell.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents: 2151
diff changeset
    33
contrib/hgsh/hgsh
21874
8da01b6e7b49 contrib/vagrant: use Vagrant for running tests on virtual machine
anatoly techtonik <techtonik@gmail.com>
parents: 21560
diff changeset
    34
contrib/vagrant/.vagrant
1270
fc3b41570082 Switch to new syntax for .hgignore files.
Bryan O'Sullivan <bos@serpentine.com>
parents: 981
diff changeset
    35
dist
21560
a9e1ab2da30d packaging: move output directory from build/ to packages/
Matt Mackall <mpm@selenic.com>
parents: 19991
diff changeset
    36
packages
19426
e43184680461 doc: make man and html from translated documents
Takumi IINO <trot.thunder@gmail.com>
parents: 17732
diff changeset
    37
doc/common.txt
1270
fc3b41570082 Switch to new syntax for .hgignore files.
Bryan O'Sullivan <bos@serpentine.com>
parents: 981
diff changeset
    38
doc/*.[0-9]
19426
e43184680461 doc: make man and html from translated documents
Takumi IINO <trot.thunder@gmail.com>
parents: 17732
diff changeset
    39
doc/*.[0-9].txt
1817
e02fea13c69d Ignore generated documentation
Thomas Arendsen Hein <thomas@intevation.de>
parents: 1270
diff changeset
    40
doc/*.[0-9].gendoc.txt
1270
fc3b41570082 Switch to new syntax for .hgignore files.
Bryan O'Sullivan <bos@serpentine.com>
parents: 981
diff changeset
    41
doc/*.[0-9].{x,ht}ml
fc3b41570082 Switch to new syntax for .hgignore files.
Bryan O'Sullivan <bos@serpentine.com>
parents: 981
diff changeset
    42
MANIFEST
14560
0980239cb20c hgignore: ignore MANIFEST.in (generated since 2ce7dfe17bc5)
Thomas Arendsen Hein <thomas@intevation.de>
parents: 14538
diff changeset
    43
MANIFEST.in
1270
fc3b41570082 Switch to new syntax for .hgignore files.
Bryan O'Sullivan <bos@serpentine.com>
parents: 981
diff changeset
    44
patches
28430
17b85d739b62 setup: create a module for the modulepolicy
timeless <timeless@mozdev.org>
parents: 28255
diff changeset
    45
mercurial/__modulepolicy__.py
1270
fc3b41570082 Switch to new syntax for .hgignore files.
Bryan O'Sullivan <bos@serpentine.com>
parents: 981
diff changeset
    46
mercurial/__version__.py
17732
93d97a212559 exewrapper: adapt for legacy HackableMercurial
Adrian Buehlmann <adrian@cadifra.com>
parents: 17274
diff changeset
    47
mercurial/hgpythonlib.h
11380
2bb6dbf04757 Ignore mercurial.egg-info build output
Lee Cantey <lcantey@gmail.com>
parents: 8147
diff changeset
    48
mercurial.egg-info
2987
12d1475b48df Ignore .DS_Store directories
Lee Cantey <lcantey@gmail.com>
parents: 2386
diff changeset
    49
.DS_Store
5693
5d0b94d3ad0c .hgignore += tags & cscope files
Kirill Smelkov <kirr@mns.spb.ru>
parents: 5622
diff changeset
    50
tags
5d0b94d3ad0c .hgignore += tags & cscope files
Kirill Smelkov <kirr@mns.spb.ru>
parents: 5622
diff changeset
    51
cscope.*
22945
3232f92360d4 hgignore: ignore the PyCharm workspace folder
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21874
diff changeset
    52
.idea/*
30406
cff0f5926797 perf: add asv benchmarks
Philippe Pepiot <philippe.pepiot@logilab.fr>
parents: 29031
diff changeset
    53
.asv/*
7648
02e358a3a8a7 i18n: let Makefile generate i18n/hg.pot
Martin Geisler <mg@daimi.au.dk>
parents: 7439
diff changeset
    54
i18n/hg.pot
7649
a489e3a94443 i18n: new build_mo command for setup.py
Martin Geisler <mg@daimi.au.dk>
parents: 7648
diff changeset
    55
locale/*/LC_MESSAGES/hg.mo
14538
3818c67a501e setup: add command to generate index of extensions
Yuya Nishihara <yuya@tcha.org>
parents: 13643
diff changeset
    56
hgext/__index__.py
1270
fc3b41570082 Switch to new syntax for .hgignore files.
Bryan O'Sullivan <bos@serpentine.com>
parents: 981
diff changeset
    57
35569
964212780daf rust: implementation of `hg`
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35190
diff changeset
    58
rust/target/
39967
aab43d5861bb rust-chg: add project skeleton
Yuya Nishihara <yuya@tcha.org>
parents: 39491
diff changeset
    59
rust/*/target/
35569
964212780daf rust: implementation of `hg`
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35190
diff changeset
    60
32080
fcddcf442e4f packaging: add make target for linux wheels
Boris Feld <boris.feld@octobus.net>
parents: 30406
diff changeset
    61
# Generated wheels
fcddcf442e4f packaging: add make target for linux wheels
Boris Feld <boris.feld@octobus.net>
parents: 30406
diff changeset
    62
wheelhouse/
fcddcf442e4f packaging: add make target for linux wheels
Boris Feld <boris.feld@octobus.net>
parents: 30406
diff changeset
    63
1270
fc3b41570082 Switch to new syntax for .hgignore files.
Bryan O'Sullivan <bos@serpentine.com>
parents: 981
diff changeset
    64
syntax: regexp
794
cdf61d3d3904 Ignore test error files, protect dot in .pc/
Thomas Arendsen Hein <thomas@intevation.de>
parents: 740
diff changeset
    65
^\.pc/
7439
7dd44ad43914 Ignore eclipse droppings
Brendan Cully <brendan@kublai.com>
parents: 6551
diff changeset
    66
^\.(pydev)?project
15702
64a80204433f ignore: add files present in the hackable-hg windows distribution
Laurens Holst <laurens.hg@grauw.nl>
parents: 14560
diff changeset
    67
64a80204433f ignore: add files present in the hackable-hg windows distribution
Laurens Holst <laurens.hg@grauw.nl>
parents: 14560
diff changeset
    68
# hackable windows distribution additions
16537
5068d0974278 update .hgignore for hackable with Python 2.7
Mads Kiilerich <mads@kiilerich.com>
parents: 15859
diff changeset
    69
^hg-python
15702
64a80204433f ignore: add files present in the hackable-hg windows distribution
Laurens Holst <laurens.hg@grauw.nl>
parents: 14560
diff changeset
    70
^hg.py$