-Subject: What's cooking in git.git (Jun 2008, issue #01; Sat, 21)
+Subject: What's cooking in git.git (Jun 2008, issue #02; Mon, 23)
-What's cooking in git.git (Jun 2008, issue #01; Sat, 21)
+What's cooking in git.git (Jun 2008, issue #02; Mon, 23)
--------------------------------------------------------
Here are the topics that have been cooking. Commits prefixed
----------------------------------------------------------------
[New Topics]
-* jc/merge-theirs (Fri Jun 20 00:17:59 2008 -0700) 2 commits
- - git-merge-recursive-{ours,theirs}
- - git-merge-file --ours, --theirs
+* jc/rerere (Sun Jun 22 02:04:31 2008 -0700) 5 commits
+ - rerere.autoupdate
+ - t4200: fix rerere test
+ - rerere: remove dubious "tail_optimization"
+ - git-rerere: detect unparsable conflicts
+ - rerere: rerere_created_at() and has_resolution() abstraction
-Punting a merge by discarding your own work in conflicting parts but still
-salvaging the parts that are cleanly automerged. It is likely that this
-will result in nonsense mishmash, but somehow often people want this, so
-here they are. The interface to the backends may need to change, though.
+* sb/rebase (Sun Jun 22 01:55:50 2008 +0200) 2 commits
+ + t3404: stricter tests for git-rebase--interactive
+ + api-builtin.txt: update and fix typo
-* lt/racy-empty (Tue Jun 10 10:44:43 2008 -0700) 1 commit
- + racy-git: an empty blob has a fixed object name
-
-* ph/mergetool (Mon Jun 16 17:33:41 2008 -0600) 1 commit
- + Remove the use of '--' in merge program invocation
-
-* j6t/mingw (Sat Nov 17 20:48:14 2007 +0100) 38 commits
- - compat/pread.c: Add a forward declaration to fix a warning
- - Windows: Fix ntohl() related warnings about printf formatting
- - Windows: TMP and TEMP environment variables specify a temporary
- directory.
- - Windows: Make 'git help -a' work.
- - Windows: Work around an oddity when a pipe with no reader is
- written to.
- - Windows: Make the pager work.
- - When installing, be prepared that template_dir may be relative.
- - Windows: Use a relative default template_dir and ETC_GITCONFIG
- - Windows: Compute the fallback for exec_path from the program
- invocation.
- - Turn builtin_exec_path into a function.
- - Windows: Use a customized struct stat that also has the st_blocks
- member.
- - Windows: Add a custom implementation for utime().
- - Windows: Add a new lstat and fstat implementation based on Win32
- API.
- - Windows: Implement a custom spawnve().
- - Windows: Implement wrappers for gethostbyname(), socket(), and
- connect().
- - Windows: Work around incompatible sort and find.
- - Windows: Implement asynchronous functions as threads.
- - Windows: Disambiguate DOS style paths from SSH URLs.
- - Windows: A rudimentary poll() emulation.
- - Windows: Change the name of hook scripts to make them not
- executable.
- - Windows: Implement start_command().
- - Windows: A pipe() replacement whose ends are not inherited to
- children.
- - Windows: Wrap execve so that shell scripts can be invoked.
- - Windows: Implement setitimer() and sigaction().
- - Windows: Fix PRIuMAX definition.
- - Windows: Implement gettimeofday().
- - Windows: Handle absolute paths in
- safe_create_leading_directories().
- - Windows: Treat Windows style path names.
- - setup.c: Prepare for Windows directory separators.
- - Windows: Work around misbehaved rename().
- - Windows: always chmod(, 0666) before unlink().
- - Windows: A minimal implemention of getpwuid().
- - Windows: Implement a wrapper of the open() function.
- - Windows: Strip ".exe" from the program name.
- - Windows: Use the Windows style PATH separator ';'.
- - Add target architecture MinGW.
- - Compile some programs only conditionally.
- - Add compat/regex.[ch] and compat/fnmatch.[ch].
+* sb/maint-rebase (Sun Jun 22 16:07:02 2008 +0200) 1 commit
+ + git-rebase.sh: Add check if rebase is in progress
-No explanation is necessary ;-).
+----------------------------------------------------------------
+[Will merge to master soon]
-* sn/static (Thu Jun 19 08:21:11 2008 +0900) 2 commits
- + config.c: make git_env_bool() static
- + environment.c: remove unused function
+* lw/gitweb (Thu Jun 19 22:03:21 2008 +0200) 1 commit
+ + gitweb: standarize HTTP status codes
* lt/config-fsync (Wed Jun 18 15:18:44 2008 -0700) 4 commits
+ Add config option to enable 'fsync()' of object files
+ Split up default "user" config parsing into helper routine
+ Split up default "core" config parsing into helper routine
-* lw/gitweb (Thu Jun 19 22:03:21 2008 +0200) 1 commit
- + gitweb: standarize HTTP status codes
+* nd/dashless (Wed Nov 28 23:21:57 2007 +0700) 1 commit
+ + Move all dashed-form commands to libexecdir
-* mv/merge-in-c (Fri Jun 20 01:22:36 2008 +0200) 11 commits
- - Add new test to ensure git-merge handles more than 25 refs.
+Scheduled for 1.6.0.
+
+* sg/merge-options (Sun Apr 6 03:23:47 2008 +0200) 1 commit
+ + merge: remove deprecated summary and diffstat options and config
+ variables
+
+* sr/tests (Sun Jun 8 16:04:35 2008 +0200) 3 commits
+ + Hook up the result aggregation in the test makefile.
+ + A simple script to parse the results from the testcases
+ + Modify test-lib.sh to output stats to t/test-results/*
+
+* jh/clone-packed-refs (Sun Jun 15 16:06:16 2008 +0200) 4 commits
+ + Teach "git clone" to pack refs
+ + Prepare testsuite for a "git clone" that packs refs
+ + Move pack_refs() and friends into libgit
+ + Incorporate fetched packs in future object traversal
+
+This is useful when cloning from a repository with insanely large number
+of refs.
+
+* lw/perlish (Thu Jun 19 22:32:49 2008 +0200) 2 commits
+ + Git.pm: add test suite
+ + t/test-lib.sh: add test_external and test_external_without_stderr
+
+Beginning of regression tests for Perl part of the system.
+
+----------------------------------------------------------------
+[Actively Cooking]
+
+* mv/merge-in-c (Sat Jun 21 19:15:35 2008 +0200) 14 commits
+ - Add new test case to ensure git-merge reduces octopus parents when
+ possible
+ - Add new test case to ensure git-merge filters for independent
+ parents
- Build in merge
- - Introduce filter_independent() in commit.c
+ - Introduce reduce_heads()
+ - Introduce get_merge_bases_many()
+ - Add new test to ensure git-merge handles more than 25 refs.
- Introduce get_octopus_merge_bases() in commit.c
- git-fmt-merge-msg: make it usable from other builtins
- Move read_cache_unmerged() to read-cache.c
- Move commit_list_count() to commit.c
- Move split_cmdline() to alias.c
-* jc/maint-combine-diff-pre-context (Wed Jun 18 23:59:41 2008 -0700) 1 commit
- + diff -c/--cc: do not include uninteresting deletion before leading
- context
-
-* lt/maint-gitdir-relative (Thu Jun 19 12:34:06 2008 -0700) 1 commit
- + Make git_dir a path relative to work_tree in setup_work_tree()
-
-----------------------------------------------------------------
-[Actively Cooking]
-
-* nd/dashless (Wed Nov 28 23:21:57 2007 +0700) 1 commit
- + Move all dashed-form commands to libexecdir
-
-Scheduled for 1.6.0.
-
* jc/dashless (Sat Dec 1 22:09:22 2007 -0800) 2 commits
- Prepare execv_git_cmd() for removal of builtins from the
filesystem
We do not plan to remove git-foo form completely from the filesystem at
this point, but git-shell may need to be updated.
-* sg/merge-options (Sun Apr 6 03:23:47 2008 +0200) 1 commit
- + merge: remove deprecated summary and diffstat options and config
- variables
-
* dr/ceiling (Mon May 19 23:49:34 2008 -0700) 4 commits
+ Eliminate an unnecessary chdir("..")
+ Add support for GIT_CEILING_DIRECTORIES
+ Fold test-absolute-path into test-path-utils
+ Implement normalize_absolute_path
-* jn/web (Tue Jun 10 19:21:44 2008 +0200) 2 commits
- + gitweb: Separate generating 'sort by' table header
- + gitweb: Separate filling list of projects info
+----------------------------------------------------------------
+[Graduated to "master"]
* rs/archive-ignore (Sun Jun 8 18:42:33 2008 +0200) 1 commit
+ Teach new attribute 'export-ignore' to git-archive
+* lt/racy-empty (Tue Jun 10 10:44:43 2008 -0700) 1 commit
+ + racy-git: an empty blob has a fixed object name
+
+* sn/static (Thu Jun 19 08:21:11 2008 +0900) 2 commits
+ + config.c: make git_env_bool() static
+ + environment.c: remove unused function
+
+* jc/maint-combine-diff-pre-context (Wed Jun 18 23:59:41 2008 -0700) 1 commit
+ + diff -c/--cc: do not include uninteresting deletion before leading
+ context
+
+* lt/maint-gitdir-relative (Thu Jun 19 12:34:06 2008 -0700) 1 commit
+ + Make git_dir a path relative to work_tree in setup_work_tree()
+
+* jn/web (Tue Jun 10 19:21:44 2008 +0200) 2 commits
+ + gitweb: Separate generating 'sort by' table header
+ + gitweb: Separate filling list of projects info
+
* rg/gitweb (Fri Jun 6 09:53:32 2008 +0200) 1 commit
+ gitweb: remove git_blame and rename git_blame2 to git_blame
+ Add an optional <mode> argument to commit/status -u|--untracked-
files option
-* sr/tests (Sun Jun 8 16:04:35 2008 +0200) 3 commits
- + Hook up the result aggregation in the test makefile.
- + A simple script to parse the results from the testcases
- + Modify test-lib.sh to output stats to t/test-results/*
-
-* jh/clone-packed-refs (Sun Jun 15 16:06:16 2008 +0200) 4 commits
- + Teach "git clone" to pack refs
- + Prepare testsuite for a "git clone" that packs refs
- + Move pack_refs() and friends into libgit
- + Incorporate fetched packs in future object traversal
-
-This is useful when cloning from a repository with insanely large number
-of refs.
-
-* jc/reflog-expire (Sun Jun 15 23:48:46 2008 -0700) 1 commit
- - Per-ref reflog expiry configuration
-
-Perhaps a good foundation for optionally unexpirable stash. As 1.6.0 will
-be a good time to make backward incompatible changes, we might make expiry
-period of stash 'never' in new repositories. Needs a concensus.
-
-* lw/perlish (Thu Jun 19 22:32:49 2008 +0200) 2 commits
- + Git.pm: add test suite
- + t/test-lib.sh: add test_external and test_external_without_stderr
-
-Beginning of regression tests for Perl part of the system.
-
* jk/test (Sat Jun 14 03:28:07 2008 -0400) 5 commits
+ enable whitespace checking of test scripts
+ avoid trailing whitespace in zero-change diffstat lines
+ builtin-fast-export: Add importing and exporting of revision marks
----------------------------------------------------------------
-[Graduated to "master"]
+[On Hold]
+
+* ph/mergetool (Mon Jun 16 17:33:41 2008 -0600) 1 commit
+ + Remove the use of '--' in merge program invocation
+
+Waiting for success reports from people who use various backends.
+
+* j6t/mingw (Sat Nov 17 20:48:14 2007 +0100) 38 commits
+ - compat/pread.c: Add a forward declaration to fix a warning
+ - Windows: Fix ntohl() related warnings about printf formatting
+ - Windows: TMP and TEMP environment variables specify a temporary
+ directory.
+ - Windows: Make 'git help -a' work.
+ - Windows: Work around an oddity when a pipe with no reader is
+ written to.
+ - Windows: Make the pager work.
+ - When installing, be prepared that template_dir may be relative.
+ - Windows: Use a relative default template_dir and ETC_GITCONFIG
+ - Windows: Compute the fallback for exec_path from the program
+ invocation.
+ - Turn builtin_exec_path into a function.
+ - Windows: Use a customized struct stat that also has the st_blocks
+ member.
+ - Windows: Add a custom implementation for utime().
+ - Windows: Add a new lstat and fstat implementation based on Win32
+ API.
+ - Windows: Implement a custom spawnve().
+ - Windows: Implement wrappers for gethostbyname(), socket(), and
+ connect().
+ - Windows: Work around incompatible sort and find.
+ - Windows: Implement asynchronous functions as threads.
+ - Windows: Disambiguate DOS style paths from SSH URLs.
+ - Windows: A rudimentary poll() emulation.
+ - Windows: Change the name of hook scripts to make them not
+ executable.
+ - Windows: Implement start_command().
+ - Windows: A pipe() replacement whose ends are not inherited to
+ children.
+ - Windows: Wrap execve so that shell scripts can be invoked.
+ - Windows: Implement setitimer() and sigaction().
+ - Windows: Fix PRIuMAX definition.
+ - Windows: Implement gettimeofday().
+ - Windows: Handle absolute paths in
+ safe_create_leading_directories().
+ - Windows: Treat Windows style path names.
+ - setup.c: Prepare for Windows directory separators.
+ - Windows: Work around misbehaved rename().
+ - Windows: always chmod(, 0666) before unlink().
+ - Windows: A minimal implemention of getpwuid().
+ - Windows: Implement a wrapper of the open() function.
+ - Windows: Strip ".exe" from the program name.
+ - Windows: Use the Windows style PATH separator ';'.
+ - Add target architecture MinGW.
+ - Compile some programs only conditionally.
+ - Add compat/regex.[ch] and compat/fnmatch.[ch].
+
+No explanation is necessary ;-). The series is probably 'next' worthy
+as-is.
+
+* jk/renamelimit (Sat May 3 13:58:42 2008 -0700) 1 commit
+ - diff: enable "too large a rename" warning when -M/-C is explicitly
+ asked for
-Nothing today but expect many small ones to come out of 'next' this
-weekend.
+This would be the right thing to do for command line use, but gitk will be
+hit due to tcl/tk's limitation, so I am holding this back for now.
----------------------------------------------------------------
-[On Hold]
+[Stalled/Needs more work]
+
+* jc/reflog-expire (Sun Jun 15 23:48:46 2008 -0700) 1 commit
+ - Per-ref reflog expiry configuration
+
+Perhaps a good foundation for optionally unexpirable stash. As 1.6.0 will
+be a good time to make backward incompatible changes, we might make expiry
+period of stash 'never' in new repositories. Needs a concensus.
+
+* jc/merge-theirs (Fri Jun 20 00:17:59 2008 -0700) 2 commits
+ - git-merge-recursive-{ours,theirs}
+ - git-merge-file --ours, --theirs
+
+Punting a merge by discarding your own work in conflicting parts but still
+salvaging the parts that are cleanly automerged. It is likely that this
+will result in nonsense mishmash, but somehow often people want this, so
+here they are. The interface to the backends may need to change, though.
* jc/blame (Wed Jun 4 22:58:40 2008 -0700) 7 commits
- blame: show "previous" information in --porcelain/--incremental
commit, which we should be able to separate out into an independent topic
from the rest.
-* jc/send-pack-tell-me-more (Thu Mar 20 00:44:11 2008 -0700) 1 commit
- - "git push": tellme-more protocol extension
-
-Kicked back to 'pu' for now.
-
-* js/rebase-i-sequencer (Sun Apr 27 02:55:50 2008 -0400) 17 commits
- - Use perl instead of tac
- - Fix t3404 assumption that `wc -l` does not use whitespace.
- - rebase -i: Use : in expr command instead of match.
- - rebase -i: update the implementation of 'mark' command
- - Add option --preserve-tags
- - Teach rebase interactive the tag command
- - Add option --first-parent
- - Do rebase with preserve merges with advanced TODO list
- - Select all lines with fake-editor
- - Unify the length of $SHORT* and the commits in the TODO list
- - Teach rebase interactive the merge command
- - Move redo merge code in a function
- - Teach rebase interactive the reset command
- - Teach rebase interactive the mark command
- - Move cleanup code into it's own function
- - Don't append default merge message to -m message
- - fake-editor: output TODO list if unchanged
-
-It is very likely that this whole thing will be reverted from 'next' and
-be replaced with the new sequenser series during 1.6.0 cycle.
+----------------------------------------------------------------
+[Dropped for now]
* sj/merge (Sat May 3 16:55:47 2008 -0700) 6 commits
- - Introduce fast forward option only
- - Head reduction before selecting merge strategy
- - Restructure git-merge.sh
- - Introduce -ff=<fast forward option>
- - New merge tests
- - Documentation for joining more than two histories
+ . Introduce fast forward option only
+ . Head reduction before selecting merge strategy
+ . Restructure git-merge.sh
+ . Introduce -ff=<fast forward option>
+ . New merge tests
+ . Documentation for joining more than two histories
This will interfere with Miklos's rewrite of merge to C.
-* jk/renamelimit (Sat May 3 13:58:42 2008 -0700) 1 commit
- - diff: enable "too large a rename" warning when -M/-C is explicitly
- asked for
-
-This would be the right thing to do for command line use, but gitk will be
-hit due to tcl/tk's limitation, so I am holding this back for now.
+* js/rebase-i-sequencer (Sun Apr 27 02:55:50 2008 -0400) 17 commits
+ . Use perl instead of tac
+ . Fix t3404 assumption that `wc -l` does not use whitespace.
+ . rebase -i: Use : in expr command instead of match.
+ . rebase -i: update the implementation of 'mark' command
+ . Add option --preserve-tags
+ . Teach rebase interactive the tag command
+ . Add option --first-parent
+ . Do rebase with preserve merges with advanced TODO list
+ . Select all lines with fake-editor
+ . Unify the length of $SHORT* and the commits in the TODO list
+ . Teach rebase interactive the merge command
+ . Move redo merge code in a function
+ . Teach rebase interactive the reset command
+ . Teach rebase interactive the mark command
+ . Move cleanup code into it's own function
+ . Don't append default merge message to -m message
+ . fake-editor: output TODO list if unchanged
* jc/cherry-pick (Wed Feb 20 23:17:06 2008 -0800) 3 commits
- - WIP: rethink replay merge
- - Start using replay-tree merge in cherry-pick
- - revert/cherry-pick: start refactoring call to merge_recursive
+ . WIP: rethink replay merge
+ . Start using replay-tree merge in cherry-pick
+ . revert/cherry-pick: start refactoring call to merge_recursive
This is meant to improve cherry-pick's behaviour when renames are
involved, by not using merge-recursive (whose d/f conflict resolution is
quite broken), but unfortunately has stalled for some time now.
* jc/stripspace (Sun Mar 9 00:30:35 2008 -0800) 6 commits
- - git-am --forge: add Signed-off-by: line for the author
- - git-am: clean-up Signed-off-by: lines
- - stripspace: add --log-clean option to clean up signed-off-by:
+ . git-am --forge: add Signed-off-by: line for the author
+ . git-am: clean-up Signed-off-by: lines
+ . stripspace: add --log-clean option to clean up signed-off-by:
lines
- - stripspace: use parse_options()
- - Add "git am -s" test
- - git-am: refactor code to add signed-off-by line for the committer
+ . stripspace: use parse_options()
+ . Add "git am -s" test
+ . git-am: refactor code to add signed-off-by line for the committer
Just my toy at this moment.
+* jc/send-pack-tell-me-more (Thu Mar 20 00:44:11 2008 -0700) 1 commit
+ . "git push": tellme-more protocol extension
+