From: Lars Schneider <larsxschneider@xxxxxxxxx> Hi, Git's clean/smudge mechanism invokes an external filter process for every single blob that is affected by a filter. If Git filters a lot of blobs then the startup time of the external filter processes can become a significant part of the overall Git execution time. This patch series addresses this problem. The first two patches are cleanup patches which are not really necessary for the feature. The third patch is the relevant one :-) You will notice that I do not check the exact number of "clean" filter invocations in the tests. The reason is that Git calls "clean" multiple times (up to 4 times for the same blob!). I posted a patch to demonstrate the problem and I would prefer to tackle the problem in a seperate patch series: http://thread.gmane.org/gmane.comp.version-control.git/300028/ The main reason for this Git core patch is to speed up Git large file extensions such as git-annex or Git LFS. I proposed an according Git LFS patch here: https://github.com/github/git-lfs/pull/1382 In addition to the Git core tests, all Git LFS integration tests run clean on my machine. Thanks, Lars Lars Schneider (3): convert: quote filter names in error messages convert: modernize tests convert: add filter.<driver>.useProtocol option Documentation/gitattributes.txt | 41 ++++++- convert.c | 222 +++++++++++++++++++++++++++++++++++--- t/t0021-conversion.sh | 232 ++++++++++++++++++++++++++++++++++------ t/t0021/rot13.pl | 80 ++++++++++++++ 4 files changed, 531 insertions(+), 44 deletions(-) create mode 100755 t/t0021/rot13.pl -- 2.9.0 -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html