{"thread":{"id":"6186","subject":"What's cooking in git.git (topics)","startedAt":"2007-01-02T00:07:43Z","lastAt":"2007-01-07T07:44:01Z","messageCount":6,"participants":["Junio C Hamano","Johannes Schindelin","Alex Riesen","Shawn O. Pearce"],"isPatch":false,"patchVersion":null,"patchTotal":null},"messages":[{"id":"30634","messageId":"7vwt4647g0.fsf@assigned-by-dhcp.cox.net","threadId":"6186","inReplyTo":null,"subject":"What's cooking in git.git (topics)","fromName":"Junio C Hamano","fromEmail":"junkio@cox.net","sentAt":"2007-01-02T00:07:43Z","receivedAt":"2007-01-02T00:07:43Z","isPatch":false,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"Here are the topics that have been cooking.  Commits prefixed\nwith '-' are only in 'pu' while commits prefixed with '+' are\nin 'next'.  The topics list the commits in reverse chronological\norder.\n\n* sp/mmap (Sat Dec 30 22:13:43 2006 -0500) 25 commits\n + Update packedGit config option documentation.\n + mmap: set FD_CLOEXEC for file descriptors we keep open for mmap()\n + pack-objects: fix use of use_pack().\n + Fix random segfaults in pack-objects.\n + Cleanup read_cache_from error handling.\n + Replace mmap with xmmap, better handling MAP_FAILED.\n + Release pack windows before reporting out of memory.\n + Default core.packdGitWindowSize to 1 MiB if NO_MMAP.\n + Test suite for sliding window mmap implementation.\n + Create pack_report() as a debugging aid.\n + Support unmapping windows on 'temporary' packfiles.\n + Improve error message when packfile mmap fails.\n + Ensure core.packedGitWindowSize cannot be less than 2 pages.\n + Load core configuration in git-verify-pack.\n + Fully activate the sliding window pack access.\n + Unmap individual windows rather than entire files.\n + Document why header parsing won't exceed a window.\n + Loop over pack_windows when inflating/accessing data.\n + Replace use_packed_git with window cursors.\n + Refactor how we open pack files to prepare for multiple windows.\n + Create read_or_die utility routine.\n + Use off_t for index and pack file lengths.\n + Refactor packed_git to prepare for sliding mmap windows.\n + Introduce new config option for mmap limit.\n + Replace unpack_entry_gently with unpack_entry.\n\nThis is what I was looking at on Cygwin on my wife's box today\n(I do not have an easy access to Windows boxes otherwise so my\nCygwin testing is limited to only weekends when I am at home).\n\n* jc/3way (Wed Nov 29 18:53:13 2006 -0800) 1 commit\n + git-merge: preserve and merge local changes when doing fast\n   forward\n\nJohannes's suggestion to record a tree object instead of\nLOCAL_DIFF is roger but not wilco yet --- I haven't thought\nthrough the issue to see an improvement in the suggestion.  We\nwill be clobbering both index and the working tree, and I think\n\"diff --binary HEAD\" and \"write-tree\" record the equivalent\namount of information given a HEAD for recovery.\n\n* sp/merge (Sun Dec 31 00:02:13 2006 -0500) 3 commits\n - Refresh the index before starting merge-recursive.\n - Improve merge performance by avoiding in-index merges.\n - Avoid git-fetch in `git-pull .` when possible.\n\nThree patches in the earlier part of this series have graduated\nto 'master' as I think they are useful.\n\n* jc/diff (Mon Dec 25 01:08:50 2006 -0800) 2 commits\n - test-para: combined diff between HEAD, index and working tree.\n - para-walk: walk n trees, index and working tree in parallel\n* jc/explain (Mon Dec 4 19:35:04 2006 -0800) 1 commit\n - git-explain\n* jc/web (Wed Nov 8 14:54:09 2006 -0800) 1 commit\n - gitweb: steal loadavg throttle from kernel.org\n* jc/pickaxe (Sun Nov 5 11:52:43 2006 -0800) 1 commit\n - blame: --show-stats for easier optimization work.\n* jc/diff-apply-patch (Fri Sep 22 16:17:58 2006 -0700) 1 commit\n + git-diff/git-apply: make diff output a bit friendlier to GNU patch\n   (part 2)\n\nThese are on hold.\n"},{"id":"30695","messageId":"Pine.LNX.4.63.0701022127040.22628@wbgn013.biozentrum.uni-wuerzburg.de","threadId":"6186","inReplyTo":"7vwt4647g0.fsf@assigned-by-dhcp.cox.net","subject":"Re: What's cooking in git.git (topics)","fromName":"Johannes Schindelin","fromEmail":"johannes.schindelin@gmx.de","sentAt":"2007-01-02T20:29:36Z","receivedAt":"2007-01-02T20:29:36Z","isPatch":false,"sender":{"key":"johannes.schindelin@gmx.de","avatar":"https://avatars.githubusercontent.com/u/127790?v=4"},"body":"Hi,\n\nOn Mon, 1 Jan 2007, Junio C Hamano wrote:\n\n> * jc/3way (Wed Nov 29 18:53:13 2006 -0800) 1 commit\n>  + git-merge: preserve and merge local changes when doing fast\n>    forward\n> \n> Johannes's suggestion to record a tree object instead of LOCAL_DIFF is \n> roger but not wilco yet --- I haven't thought through the issue to see \n> an improvement in the suggestion.  We will be clobbering both index and \n> the working tree, and I think \"diff --binary HEAD\" and \"write-tree\" \n> record the equivalent amount of information given a HEAD for recovery.\n\nFor recovery, yes. The difference comes in\n\n- that you can use the familiar git operations to recover (git read-tree \n  PRE_MERGE_TREE), and\n- that you can do other git operations on the tree, but not on the diff.\n\nHth,\nDscho\n"},{"id":"30825","messageId":"81b0412b0701041022h30cd4fcxd62dbf3ecb504ea9@mail.gmail.com","threadId":"6186","inReplyTo":"7vwt4647g0.fsf@assigned-by-dhcp.cox.net","subject":"Re: What's cooking in git.git (topics)","fromName":"Alex Riesen","fromEmail":"raa.lkml@gmail.com","sentAt":"2007-01-04T18:22:32Z","receivedAt":"2007-01-04T18:22:32Z","isPatch":false,"sender":{"key":"raa.lkml@gmail.com","avatar":"https://avatars.githubusercontent.com/u/324101?v=4"},"body":"On 1/2/07, Junio C Hamano <junkio@cox.net> wrote:\n> Here are the topics that have been cooking.  Commits prefixed\n> with '-' are only in 'pu' while commits prefixed with '+' are\n> in 'next'.  The topics list the commits in reverse chronological\n> order.\n>\n> * sp/mmap (Sat Dec 30 22:13:43 2006 -0500) 25 commits\n\nRunning this and the merge-recursive speedup I sent today locally.\nsp/mmap needs relatively recent cygwin library (otherwise pread\nis broken). No other ill effects noticed. Perfomance is bearable.\n"},{"id":"30853","messageId":"20070105025921.GA14042@spearce.org","threadId":"6186","inReplyTo":"81b0412b0701041022h30cd4fcxd62dbf3ecb504ea9@mail.gmail.com","subject":"Re: What's cooking in git.git (topics)","fromName":"Shawn O. Pearce","fromEmail":"spearce@spearce.org","sentAt":"2007-01-05T02:59:21Z","receivedAt":"2007-01-05T02:59:21Z","isPatch":false,"sender":{"key":"spearce@spearce.org","avatar":"https://avatars.githubusercontent.com/u/34844?v=4"},"body":"Alex Riesen <raa.lkml@gmail.com> wrote:\n> On 1/2/07, Junio C Hamano <junkio@cox.net> wrote:\n> >Here are the topics that have been cooking.  Commits prefixed\n> >with '-' are only in 'pu' while commits prefixed with '+' are\n> >in 'next'.  The topics list the commits in reverse chronological\n> >order.\n> >\n> >* sp/mmap (Sat Dec 30 22:13:43 2006 -0500) 25 commits\n> \n> Running this and the merge-recursive speedup I sent today locally.\n> sp/mmap needs relatively recent cygwin library (otherwise pread\n> is broken). No other ill effects noticed. Perfomance is bearable.\n\nThe default on Cygwin is now NO_MMAP.  I've disabled that default\nin my own Cygwin environment and continue to use mmap() rather than\npread(), but I'm also running my sp/mmap change there.  I haven't\nnoticed a performance difference, but I also haven't tested for one.\nIOW if there is a difference its close enough to noise to not be\nvisible to me as a user.\n\n-- \nShawn.\n"},{"id":"30867","messageId":"81b0412b0701050137g49d07c8aw2ce6938dfcef1646@mail.gmail.com","threadId":"6186","inReplyTo":"20070105025921.GA14042@spearce.org","subject":"Re: What's cooking in git.git (topics)","fromName":"Alex Riesen","fromEmail":"raa.lkml@gmail.com","sentAt":"2007-01-05T09:37:08Z","receivedAt":"2007-01-05T09:37:08Z","isPatch":false,"sender":{"key":"raa.lkml@gmail.com","avatar":"https://avatars.githubusercontent.com/u/324101?v=4"},"body":"On 1/5/07, Shawn O. Pearce <spearce@spearce.org> wrote:\n> > >* sp/mmap (Sat Dec 30 22:13:43 2006 -0500) 25 commits\n> >\n> > Running this and the merge-recursive speedup I sent today locally.\n> > sp/mmap needs relatively recent cygwin library (otherwise pread\n> > is broken). No other ill effects noticed. Perfomance is bearable.\n>\n> The default on Cygwin is now NO_MMAP.  I've disabled that default\n\nI left it at NO_MMAP: wanted to see how bad pread performs.\nNo worse than mmap, as it seems.\n\n> in my own Cygwin environment and continue to use mmap() rather than\n> pread(), but I'm also running my sp/mmap change there.  I haven't\n> noticed a performance difference, but I also haven't tested for one.\n> IOW if there is a difference its close enough to noise to not be\n> visible to me as a user.\n\nConfirm that.\n"},{"id":"31016","messageId":"7v8xgf46ym.fsf@assigned-by-dhcp.cox.net","threadId":"6186","inReplyTo":"7vwt4647g0.fsf@assigned-by-dhcp.cox.net","subject":"What's cooking in git.git (topics)","fromName":"Junio C Hamano","fromEmail":"junkio@cox.net","sentAt":"2007-01-07T07:44:01Z","receivedAt":"2007-01-07T07:44:01Z","isPatch":false,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"Here are the topics that have been cooking.  Commits prefixed\nwith '-' are only in 'pu' while commits prefixed with '+' are\nin 'next'.  The topics list the commits in reverse chronological\norder.\n\nI will start merging some topics from 'next' to 'master' this\nweekend.  Probably will declare -rc1 next weekend.\n\n* jc/reflog (Sat Jan 6 22:32:41 2007 -0800) 5 commits\n + reflog --fix-stale: do not check the same trees and commits\n   repeatedly.\n + reflog expire --fix-stale\n + Move traversal of reachable objects into a separate library.\n + builtin-prune: separate ref walking from reflog walking.\n + builtin-prune: make file-scope static struct to an argument.\n\nWe would want to do more interesting things on reflog data (such\nas bisecting) and need to make reflog reliable for that.  We\nallowed reflog to point at missing commits for too long, and\nthis is to clean up entries that point at commits removed with\nolder versions of git.\n\nThis needs to be in v1.5.0 final.\n\n* jc/reset-remove (Fri Jan 5 01:38:56 2007 -0800) 2 commits\n + git-reset <tree> -- <path> restores absense of <path> in <tree>\n + diff-index --cached --raw: show tree entry on the LHS for unmerged\n   entries.\n\nWill merge to master.\n\n* sp/mmap (Thu Jan 4 22:28:08 2007 -0500) 26 commits\n + Increase packedGit{Limit,WindowSize} on 64 bit systems.\n + Update packedGit config option documentation.\n + mmap: set FD_CLOEXEC for file descriptors we keep open for mmap()\n + pack-objects: fix use of use_pack().\n + Fix random segfaults in pack-objects.\n + Cleanup read_cache_from error handling.\n + Replace mmap with xmmap, better handling MAP_FAILED.\n + Release pack windows before reporting out of memory.\n + Default core.packdGitWindowSize to 1 MiB if NO_MMAP.\n + Test suite for sliding window mmap implementation.\n + Create pack_report() as a debugging aid.\n + Support unmapping windows on 'temporary' packfiles.\n + Improve error message when packfile mmap fails.\n + Ensure core.packedGitWindowSize cannot be less than 2 pages.\n + Load core configuration in git-verify-pack.\n + Fully activate the sliding window pack access.\n + Unmap individual windows rather than entire files.\n + Document why header parsing won't exceed a window.\n + Loop over pack_windows when inflating/accessing data.\n + Replace use_packed_git with window cursors.\n + Refactor how we open pack files to prepare for multiple windows.\n + Create read_or_die utility routine.\n + Use off_t for index and pack file lengths.\n + Refactor packed_git to prepare for sliding mmap windows.\n + Introduce new config option for mmap limit.\n + Replace unpack_entry_gently with unpack_entry.\n\nWill merge to 'master'.\n\n* jc/remote (Wed Jan 3 12:13:04 2007 -0800) 1 commit\n + git-remote\n\nI described what's still missing in this, and the list may have\nideas to enhance it.  Will merge to 'master' and people can hack\non it there.\n\n* jc/detached-head (Wed Jan 3 21:10:10 2007 +0100) 3 commits\n - git-branch: show detached HEAD\n - git-status: show detached HEAD\n - Detached HEAD (experimental)\n\nI personally feel this should be in v1.5.0.final, but it is not\nyet ready, unfortunately...\n\n* jr/status (Tue Jan 2 20:26:21 2007 +0100) 4 commits\n + Improve cached content header of status output\n + Support --amend on initial commit in status output\n + Improve \"nothing to commit\" part of status output\n + Clarify syntax and role of git-add in status output\n\nWill merge to 'master'.\n\n* jc/3way (Wed Nov 29 18:53:13 2006 -0800) 1 commit\n + git-merge: preserve and merge local changes when doing fast\n   forward\n\n* jc/diff-apply-patch (Fri Sep 22 16:17:58 2006 -0700) 1 commit\n + git-diff/git-apply: make diff output a bit friendlier to GNU patch\n   (part 2)\n\n* sp/merge (Sun Dec 31 00:02:13 2006 -0500) 3 commits\n - Refresh the index before starting merge-recursive.\n - Improve merge performance by avoiding in-index merges.\n - Avoid git-fetch in `git-pull .` when possible.\n* jc/diff (Mon Dec 25 01:08:50 2006 -0800) 2 commits\n - test-para: combined diff between HEAD, index and working tree.\n - para-walk: walk n trees, index and working tree in parallel\n* jc/explain (Mon Dec 4 19:35:04 2006 -0800) 1 commit\n - git-explain\n* jc/web (Wed Nov 8 14:54:09 2006 -0800) 1 commit\n - gitweb: steal loadavg throttle from kernel.org\n* jc/pickaxe (Sun Nov 5 11:52:43 2006 -0800) 1 commit\n - blame: --show-stats for easier optimization work.\n"}]}