.hgignore
author Patrick Mezard <pmezard@gmail.com>
Fri, 27 May 2011 21:50:10 +0200
branchstable
changeset 958 e763012a55e5
parent 450 86c17b3e9100
permissions -rw-r--r--
patch: use temporary files to handle intermediate copies git patches may require copies to be handled out-of-order. For instance, take the following sequence: * modify a * copy a into b Here, we have to generate b from a before its modification. To do so, applydiff() was scanning for copy metadata and performing the copies before processing the other changes in-order. While smart and efficient, this approach complicates things by handling file copies and file creations at different places and times. While a new file must not exist before being patched a copied file already exists before applying the first hunk. Instead of copying the files at their final destination before patching, we store them in a temporary file location and retrieve them when patching. The filestore always stores file content in real files but nothing prevents adding a cache layer. The filestore class was kept separate from fsbackend for at least two reasons: - This class is likely to be reused as a temporary result store for a future repository patching call (entries just have to be extended to contain copy sources). - Delegating this role to backends might be more efficient in a repository backend case: the source files are already available in the repository itself and do not need to be copied again. It also means that third-parties backend would have to implement two other methods. If we ever decide to merge the filestore feature into backend, a minimalistic approach would be to compose with filestore directly. Keep in mind this copy overhead only applies for copy/rename sources, and may even be reduced to copy sources which have to handled ahead of time. [ original upstream message ]
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
0
41c7e55cd9e9 Startup hgkeyword package with .hgignore, __init__.py
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
     1
syntax: glob
41c7e55cd9e9 Startup hgkeyword package with .hgignore, __init__.py
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
     2
41c7e55cd9e9 Startup hgkeyword package with .hgignore, __init__.py
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
     3
*.pyc
124
99dc49c5bcfb Setup standalone module install, version tracking
Christian Ebert <blacktrash@gmx.net>
parents: 0
diff changeset
     4
*.pyo
0
41c7e55cd9e9 Startup hgkeyword package with .hgignore, __init__.py
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
     5
*~
41c7e55cd9e9 Startup hgkeyword package with .hgignore, __init__.py
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
     6
*.swp
41c7e55cd9e9 Startup hgkeyword package with .hgignore, __init__.py
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
     7
*.orig
41c7e55cd9e9 Startup hgkeyword package with .hgignore, __init__.py
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
     8
*.rej
450
86c17b3e9100 (stable) ignore .DS_Store
Christian Ebert <blacktrash@gmx.net>
parents: 238
diff changeset
     9
.DS_Store
124
99dc49c5bcfb Setup standalone module install, version tracking
Christian Ebert <blacktrash@gmx.net>
parents: 0
diff changeset
    10
212
0ac36a08c320 hgignore build directory
Christian Ebert <blacktrash@gmx.net>
parents: 124
diff changeset
    11
build/*
220
943e1e1ea042 Include MANIFEST.in in dist; hgignore MANIFEST
Christian Ebert <blacktrash@gmx.net>
parents: 212
diff changeset
    12
MANIFEST