What's cooking in git.git (Jul 2008, issue #03; Mon, 07) -------------------------------------------------------- Here are the topics that have been cooking. Commits prefixed with '-' are only in 'pu' while commits prefixed with '+' are in 'next'. The topics list the commits in reverse chronological order. The topics meant to be applied to the maintenance series have "maint-" in their names. It already is beginning to become clear what 1.6.0 will look like. Wha= t's already in 'next' all are well intentioned (I do not guarantee they are already bug-free --- that is what cooking them in 'next' is for) and ar= e good set of feature enhancements. Bigger changes will be: * Port for MinGW. * With the default Makefile settings, most of the programs will be installed outside your $PATH, except for "git", "gitk", "git-gui" an= d some server side programs that need to be accessible for technical reasons. Invoking a git subcommand as "git-xyzzy" from the command line has been deprecated since early 2006 (and officially announced = in 1.5.4 release notes); use of them from your scripts after adding output from "git --exec-path" to the $PATH will still be supported i= n 1.6.0, but users are again strongly encouraged to adjust their scripts to use "git xyzzy" form, as we will stop installing "git-xyzzy" hardlinks for built-in commands in later releases. * git-merge will be rewritten in C. * default pack and idx versions will be updated as scheduled for some time ago. * GIT_CONFIG, which was only documented as affecting "git config", but actually affected all git commands, now only affects "git config". GIT_LOCAL_CONFIG, also only documented as affecting "git config" and not different from GIT_CONFIG in a useful way, is removed. ---------------------------------------------------------------- [New Topics] * jc/rebase-orig-head (Mon Jul 7 00:16:38 2008 -0700) 1 commit + Teach "am" and "rebase" to mark the original position with ORIG_HEAD * sb/sequencer (Tue Jul 1 04:38:34 2008 +0200) 4 commits . Migrate git-am to use git-sequencer . Add git-sequencer test suite (t3350) . Add git-sequencer prototype documentation . Add git-sequencer shell prototype * js/pick-root (Fri Jul 4 16:19:52 2008 +0100) 1 commit + Allow cherry-picking root commits * ab/bundle (Sat Jul 5 17:26:40 2008 -0400) 1 commit + Teach git-bundle to read revision arguments from stdin like git- rev-list. ---------------------------------------------------------------- [Will merge to master soon] * js/apply-root (Sun Jul 6 18:36:01 2008 -0700) 3 commits + git-apply --directory: make --root more similar to GNU diff + apply --root: thinkofix. + Teach "git apply" to prepend a prefix with "--root=3D" * jc/reflog-expire (Sat Jun 28 22:24:49 2008 -0700) 2 commits + Make default expiration period of reflog used for stash infinite + Per-ref reflog expiry configuration As 1.6.0 will be a good time to make backward incompatible changes, the tip commit makes the default expiry period of stash 'never', unless you configure them to expire explicitly using gc.refs/stash.* variables. Needs consensus, but I am guessing that enough people would want stash that does not expire. * jk/pager-config (Thu Jul 3 07:46:57 2008 -0400) 1 commit + Allow per-command pager config ---------------------------------------------------------------- [Actively Cooking] * sg/stash-k-i (Fri Jun 27 16:37:15 2008 +0200) 1 commit + stash: introduce 'stash save --keep-index' option One weakness of our "partial commit" workflow support used to be that t= he user can incrementally build what is to be committed in the index but t= hat state cannot be tested as a whole in the working tree. This allows you= to temporarily stash the remaining changes in the working tree so that the index state before running "stash save --keep-index" can be seen in the working tree to be tested and then committed. * am/stash-branch (Mon Jul 7 02:50:10 2008 +0530) 2 commits + Add a test for "git stash branch" + Implement "git stash branch " Creates a new branch out of the stashed state, after returning from the interrupt that forced you to create the stash in the first place. * tr/add-i-e (Thu Jul 3 00:00:00 2008 +0200) 3 commits + git-add--interactive: manual hunk editing mode + git-add--interactive: remove hunk coalescing + git-add--interactive: replace hunk recounting with apply --recount Adds 'e/dit' action to interactive add command. * jc/report-tracking (Sun Jul 6 02:54:56 2008 -0700) 5 commits + branch -r -v: do not spit out garbage + stat_tracking_info(): clear object flags used during counting + git-branch -v: show the remote tracking statistics + git-status: show the remote tracking statistics + Refactor "tracking statistics" code used by "git checkout" Makes the "your branch is ahead of the tracked one by N commits" logic = and messages available to other commands; status and branch are updated. * jc/merge-theirs (Mon Jun 30 22:18:57 2008 -0700) 5 commits + Make "subtree" part more orthogonal to the rest of merge- recursive. + Teach git-pull to pass -X