{"push_id":1343784417,"size":32,"distinct_size":19,"ref":"refs/heads/jk/metapacks-wip","head":"ebeee18e404f1b07b3650c982576fbe6b7e41b88","before":"40c75de98a1425f681210fd5aa51260fd74bc1ce","commits":[{"sha":"f7e2e592cf9bad03bc3adc44dcbe498b876dc808","author":{"name":"Junio C Hamano","email":"3228067b6039a0d99bddaf967dafdecd5cc61600@pobox.com"},"message":"Merge branch 'dt/mailinfo' into maint\n\n* dt/mailinfo:\n  add David Turner's Two Sigma address","distinct":false,"url":"https://api.github.com/repos/peff/git/commits/f7e2e592cf9bad03bc3adc44dcbe498b876dc808"},{"sha":"a813b19190a75e44b6ebd1ea5317ef5ed914cde0","author":{"name":"Junio C Hamano","email":"3228067b6039a0d99bddaf967dafdecd5cc61600@pobox.com"},"message":"Merge branch 'rs/copy-array' into maint\n\nCode cleanup.\n\n* rs/copy-array:\n  use COPY_ARRAY\n  add COPY_ARRAY","distinct":false,"url":"https://api.github.com/repos/peff/git/commits/a813b19190a75e44b6ebd1ea5317ef5ed914cde0"},{"sha":"1f253d88face02b68a86fae36e6722c9ebc73856","author":{"name":"Junio C Hamano","email":"3228067b6039a0d99bddaf967dafdecd5cc61600@pobox.com"},"message":"Merge branch 'sg/ref-filter-parse-optim' into maint\n\nThe code that parses the format parameter of for-each-ref command\nhas seen a micro-optimization.\n\n* sg/ref-filter-parse-optim:\n  ref-filter: strip format option after a field name only once while parsing","distinct":false,"url":"https://api.github.com/repos/peff/git/commits/1f253d88face02b68a86fae36e6722c9ebc73856"},{"sha":"18fd96f1d706357704c8d51f12b9412cd424ac49","author":{"name":"Junio C Hamano","email":"3228067b6039a0d99bddaf967dafdecd5cc61600@pobox.com"},"message":"Merge branch 'jk/graph-padding-fix' into maint\n\nThe \"graph\" API used in \"git log --graph\" miscounted the number of\noutput columns consumed so far when drawing a padding line, which\nhas been fixed; this did not affect any existing code as nobody\ntried to write anything after the padding on such a line, though.\n\n* jk/graph-padding-fix:\n  graph: fix extra spaces in graph_padding_line","distinct":false,"url":"https://api.github.com/repos/peff/git/commits/18fd96f1d706357704c8d51f12b9412cd424ac49"},{"sha":"9534df98683e4268628619fb86af29e11e6db353","author":{"name":"Junio C Hamano","email":"3228067b6039a0d99bddaf967dafdecd5cc61600@pobox.com"},"message":"Merge branch 'jc/blame-abbrev' into maint\n\nAlmost everybody uses DEFAULT_ABBREV to refer to the default\nsetting for the abbreviation, but \"git blame\" peeked into\nunderlying variable bypassing the macro for no good reason.\n\n* jc/blame-abbrev:\n  blame: use DEFAULT_ABBREV macro","distinct":false,"url":"https://api.github.com/repos/peff/git/commits/9534df98683e4268628619fb86af29e11e6db353"},{"sha":"54a9f14743748ada4bef3caffa45c6170ae4da32","author":{"name":"Junio C Hamano","email":"3228067b6039a0d99bddaf967dafdecd5cc61600@pobox.com"},"message":"Merge branch 'pb/rev-list-reverse-with-count' into maint\n\nDoc update to clarify what \"log -3 --reverse\" does.\n\n* pb/rev-list-reverse-with-count:\n  rev-list-options: clarify the usage of --reverse","distinct":false,"url":"https://api.github.com/repos/peff/git/commits/54a9f14743748ada4bef3caffa45c6170ae4da32"},{"sha":"e1eb84cccb927834acae58ec2c0f727c7bf184c7","author":{"name":"Junio C Hamano","email":"3228067b6039a0d99bddaf967dafdecd5cc61600@pobox.com"},"message":"Merge branch 'kd/mailinfo-quoted-string' into maint\n\nAn author name, that spelled a backslash-quoted double quote in the\nhuman readable part \"My \\\"double quoted\\\" name\", was not unquoted\ncorrectly while applying a patch from a piece of e-mail.\n\n* kd/mailinfo-quoted-string:\n  mailinfo: unescape quoted-pair in header fields\n  t5100-mailinfo: replace common path prefix with variable","distinct":false,"url":"https://api.github.com/repos/peff/git/commits/e1eb84cccb927834acae58ec2c0f727c7bf184c7"},{"sha":"0bc409dab941d7df065c486342cefcde78647c42","author":{"name":"Junio C Hamano","email":"3228067b6039a0d99bddaf967dafdecd5cc61600@pobox.com"},"message":"Merge branch 'rs/git-gui-use-modern-git-merge-syntax' into maint\n\nThe original command line syntax for \"git merge\", which was \"git\nmerge <msg> HEAD <parent>...\", has been deprecated for quite some\ntime, and \"git gui\" was the last in-tree user of the syntax.  This\nis finally fixed, so that we can move forward with the deprecation.\n\n* rs/git-gui-use-modern-git-merge-syntax:\n  git-gui: stop using deprecated merge syntax","distinct":false,"url":"https://api.github.com/repos/peff/git/commits/0bc409dab941d7df065c486342cefcde78647c42"},{"sha":"f7f0a87e0a27a1baaf782af7cec18fd23fdf35de","author":{"name":"Junio C Hamano","email":"3228067b6039a0d99bddaf967dafdecd5cc61600@pobox.com"},"message":"Merge branch 'jc/verify-loose-object-header' into maint\n\nCodepaths that read from an on-disk loose object were too loose in\nvalidating what they are reading is a proper object file and\nsometimes read past the data they read from the disk, which has\nbeen corrected.  H/t to Gustavo Grieco for reporting.\n\n* jc/verify-loose-object-header:\n  unpack_sha1_header(): detect malformed object header\n  streaming: make sure to notice corrupt object","distinct":false,"url":"https://api.github.com/repos/peff/git/commits/f7f0a87e0a27a1baaf782af7cec18fd23fdf35de"},{"sha":"fdb70b16a006f82b65fb92995886a074c829f587","author":{"name":"Junio C Hamano","email":"3228067b6039a0d99bddaf967dafdecd5cc61600@pobox.com"},"message":"Merge branch 'jc/worktree-config' into maint\n\n\"git worktree\", even though it used the default_abbrev setting that\nought to be affected by core.abbrev configuration variable, ignored\nthe variable setting.  The command has been taught to read the\ndefault set of configuration variables to correct this.\n\n* jc/worktree-config:\n  worktree: honor configuration variables","distinct":false,"url":"https://api.github.com/repos/peff/git/commits/fdb70b16a006f82b65fb92995886a074c829f587"},{"sha":"6823506f364cd02589dd4485108516bd6bea8d9e","author":{"name":"Junio C Hamano","email":"3228067b6039a0d99bddaf967dafdecd5cc61600@pobox.com"},"message":"Merge branch 'jk/verify-packfile-gently' into maint\n\nA low-level function verify_packfile() was meant to show errors\nthat were detected without dying itself, but under some conditions\nit didn't and died instead, which has been fixed.\n\n* jk/verify-packfile-gently:\n  verify_packfile: check pack validity before accessing data","distinct":false,"url":"https://api.github.com/repos/peff/git/commits/6823506f364cd02589dd4485108516bd6bea8d9e"},{"sha":"74eeaf7b72a94bd3e0ff275edb90e6ee2423b529","author":{"name":"Junio C Hamano","email":"3228067b6039a0d99bddaf967dafdecd5cc61600@pobox.com"},"message":"Start preparing for 2.10.2\n\nSigned-off-by: Junio C Hamano <gitster@pobox.com>","distinct":false,"url":"https://api.github.com/repos/peff/git/commits/74eeaf7b72a94bd3e0ff275edb90e6ee2423b529"},{"sha":"3cdd5d19178a54d2e51b5098d43b57571241d0ab","author":{"name":"Junio C Hamano","email":"3228067b6039a0d99bddaf967dafdecd5cc61600@pobox.com"},"message":"Sync with maint\n\n* maint:\n  Start preparing for 2.10.2","distinct":false,"url":"https://api.github.com/repos/peff/git/commits/3cdd5d19178a54d2e51b5098d43b57571241d0ab"},{"sha":"8ee99e9fd00a2b2d079781a92dfa366830bcf492","author":{"name":"Jeff King","email":"7e57302763bea699aee296fb53304dc616ab92d5@peff.net"},"message":"introduce pack metadata cache files\n\nThe on-disk packfile format is nicely compact, but it does\nnot always provide the fastest format for looking up\ninformation. This patch introduces the concept of\n\"metapacks\", optional metadata files which can live\nalongside packs and represent their data in different ways.\nThis can allow space-time tradeoffs in accessing certain\nobject data.\n\nSuch space-time tradeoffs have traditionally gone into the\n.idx file (e.g., the fact that we can quickly find an\nobject's offset in the packfile is due to the index). In\ntheory, cached data could also go into the .idx file.\nHowever, keeping it in a separate file makes backwards\ncompatibility much simpler. Older versions of git can simply\nignore the extra files and use the existing methods for\naccessing object data. This also makes metapacks optional,\nso you can easily tune the space-time tradeoff on a per-repo\nbasis.\n\nTODO: document on-disk format in Documentation/technical\nTODO: document api","distinct":true,"url":"https://api.github.com/repos/peff/git/commits/8ee99e9fd00a2b2d079781a92dfa366830bcf492"},{"sha":"78e8afb0d87f6723f94aa8ef977d7817f0d2adbf","author":{"name":"Jeff King","email":"7e57302763bea699aee296fb53304dc616ab92d5@peff.net"},"message":"introduce a commit metapack\n\nWhen we are doing a commit traversal that does not need to\nlook at the commit messages themselves (e.g., rev-list,\nmerge-base, etc), we spend a lot of time accessing,\ndecompressing, and parsing the commit objects just to find\nthe parent and timestamp information. We can make a\nspace-time tradeoff by caching that information on disk in a\ncompact, uncompressed format.\n\nTODO: document on-disk format in Documentation/technical\nTODO: document API","distinct":true,"url":"https://api.github.com/repos/peff/git/commits/78e8afb0d87f6723f94aa8ef977d7817f0d2adbf"},{"sha":"d8b99efe52b30d654b95358f13103e2f701f158b","author":{"name":"Jeff King","email":"7e57302763bea699aee296fb53304dc616ab92d5@peff.net"},"message":"add git-metapack command\n\nThis is a plumbing command for generating metapack files.\nRight now it understands only the \"commits\" metapack (and\nthere is not yet a reader). Eventually we may want to build\nthis metapack automatically when we generate a new pack.\nLet's be conservative for now, though, and let the idea\nprove itself in practice before turning it on for everyone.\n\nThe commits metapack generated by this command is 84 bytes\nper commit; for linux-2.6.git, this is about 31M.\n\nTODO: documentation","distinct":true,"url":"https://api.github.com/repos/peff/git/commits/d8b99efe52b30d654b95358f13103e2f701f158b"},{"sha":"3f78ac5d251ca819ad09cdc1a42d309d26b58ea7","author":{"name":"Jeff King","email":"7e57302763bea699aee296fb53304dc616ab92d5@peff.net"},"message":"commit: look up commit info in metapack\n\nNow that we have the plumbing in place to generate and read\ncommit metapacks, we can hook them up to parse_commit to\nfill in the traversal information much more quickly.\n\nWe only do so if save_commit_buffer is turned off;\notherwise, the callers will expect to be able to read\ncommit->buffer after parse_commit returns (and since our\ncache obviously does not have that information, we must\nleave it NULL). As callers learn to handle a NULL\ncommit->buffer, we can eventually relax this (while it might\nseem like a useless no-op to use the cache if we are going\nto load the commit anyway, many callers may first filter\nbased on the traversal, and end up loading the commit\nmessage for only a subset of the commits).\n\nWith this patch (and having run \"git metapack --all\n--commits\"), my best-of-five warm-cache \"git rev-list\n--count --all\" traversal of linux-2.6.git drops from 4.219s\nto 0.659s.\n\nSimilarly, cold-cache drops from 13.696s to 4.763s due to\nthe compactness of the cache data (but you are penalized, of\ncourse, if you then want to actually look at the commit\nmessages, since you have not warmed them into the cache).","distinct":true,"url":"https://api.github.com/repos/peff/git/commits/3f78ac5d251ca819ad09cdc1a42d309d26b58ea7"},{"sha":"7c47b52f4178279f2beaf7a1e8b12572daaa3493","author":{"name":"Duy Nguyen","email":"d0e3b15a74ff6c70e81434a55b9c843230dc3715@gmail.com"},"message":"introduce a commit metapack","distinct":true,"url":"https://api.github.com/repos/peff/git/commits/7c47b52f4178279f2beaf7a1e8b12572daaa3493"},{"sha":"65dd86d3e7cf1fed8fb5eb106420bb95a9060e2b","author":{"name":"Jeff King","email":"7e57302763bea699aee296fb53304dc616ab92d5@peff.net"},"message":"parse_object: use commit_metapack to parse commits\n\nWe can speculate that an unknown object may be a commit, and\nif we find it in the metapack, assume it is. This can speed\nup codepaths which follow parse_object rather than\nparse_commit (e.g., when looking up a ref rather than\nfollowing a parent link).","distinct":true,"url":"https://api.github.com/repos/peff/git/commits/65dd86d3e7cf1fed8fb5eb106420bb95a9060e2b"},{"sha":"f4e432141bbe0cd4c9d13a49e49db5dec4ee39f5","author":{"name":"Jeff King","email":"7e57302763bea699aee296fb53304dc616ab92d5@peff.net"},"message":"branch: turn off save_commit_buffer\n\nMost of the commits we read will be for traversal like\n--contains, and we never care about the log contents. The\nexception is when we print for \"-vv\", but even then, we are\nbetter to re-read the object for the few that we actually\nprint.","distinct":true,"url":"https://api.github.com/repos/peff/git/commits/f4e432141bbe0cd4c9d13a49e49db5dec4ee39f5"}]}
{"actor":{"display_login":"peff"}}