diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000000..3d84236f41 --- /dev/null +++ b/.gitattributes @@ -0,0 +1 @@ +whats-cooking.txt diff=whatscooking diff --git a/README.cooking b/README.cooking new file mode 100644 index 0000000000..c234166c51 --- /dev/null +++ b/README.cooking @@ -0,0 +1,17 @@ +The compare-cooking.perl script is meant to help viewing the differences +between periodical "What's cooking" messages, and can be used as an +external diff driver by: + + $ git config diff.whatscooking.command ./compare-cooking.perl + +to produce this section in your .git/config + + [diff "whatscooking"] + command = ./compare-cooking.perl + +You can use e.g. + + $ git log -p --ext-diff whats-cooking.txt + $ git show --ext-diff whats-cooking.txt + +to review the history. diff --git a/whats/cooking/2010/01/01.txt b/whats-cooking.txt similarity index 98% rename from whats/cooking/2010/01/01.txt rename to whats-cooking.txt index 21b62a86f4..93ec10f90c 100644 --- a/whats/cooking/2010/01/01.txt +++ b/whats-cooking.txt @@ -81,6 +81,10 @@ Resurrected from "Ejected" category. - run-command: convert simple callsites to use_shell - run-command: add "use shell" option + Xref: news.gmane.org gmane.comp.version-control.git:136128 + * check t0021: drop one to t4030; + * reorder and move t0021 up, immediately after run-command: optimize + * mm/config-path (2009-12-30) 1 commit (merged to 'next' on 2010-01-03 at 9c0e81a) + builtin-config: add --path option doing ~ and ~user expansion. diff --git a/whats/cooking/2008/06/01.txt b/whats/cooking/2008/06/01.txt deleted file mode 100644 index 31b12bd582..0000000000 --- a/whats/cooking/2008/06/01.txt +++ /dev/null @@ -1,306 +0,0 @@ -What's cooking in git.git (Jun 2008, issue #01; Sat, 21) --------------------------------------------------------- - -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. - -It already is beginning to become clear what 1.6.0 will look like. What'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 are -good set of feature enhancements. But bigger changes will be: - - * MinGW will be in. - - * /usr/bin/git-cat-file is no more. The bulk of the git commands will - move to /usr/libexec/git-core/ or somesuch. - - * git-merge will be rewritten in C. - -Currently tip of 'pu' is broken and does not pass tests, as j6t/mingw has -interaction with dr/ceiling and jc/merge-theirs has interaction with -mv/merge-in-c. - ----------------------------------------------------------------- -[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 - -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. - -* 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]. - -No explanation is necessary ;-). - -* sn/static (Thu Jun 19 08:21:11 2008 +0900) 2 commits - + config.c: make git_env_bool() static - + environment.c: remove unused function - -* 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 "i18n" and "branch" config parsing into helper - routines - + 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 - -* 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. - - Build in merge - - Introduce filter_independent() in commit.c - - 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 - - parseopt: add a new PARSE_OPT_ARGV0_IS_AN_OPTION option - - Add new test to ensure git-merge handles pull.twohead and - pull.octopus - - Move parse-options's skip_prefix() to git-compat-util.h - - 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 - - git-shell: accept "git foo" form - -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 - -* rs/archive-ignore (Sun Jun 8 18:42:33 2008 +0200) 1 commit - + Teach new attribute 'export-ignore' to git-archive - -* rg/gitweb (Fri Jun 6 09:53:32 2008 +0200) 1 commit - + gitweb: remove git_blame and rename git_blame2 to git_blame - -* kh/update-ref (Tue Jun 3 01:34:53 2008 +0200) 2 commits - + Make old sha1 optional with git update-ref -d - + Clean up builtin-update-ref's option parsing - -* mo/status-untracked (Thu Jun 5 14:47:50 2008 +0200) 3 commits - + Add configuration option for default untracked files mode - + Add argument 'no' commit/status option -u|--untracked-files - + Add an optional 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 - + avoid whitespace on empty line in automatic usage message - + mask necessary whitespace policy violations in test scripts - + fix whitespace violations in test scripts - -Tightens whitespace rules for t/*.sh scripts. - -* pb/fast-export (Wed Jun 11 13:17:04 2008 +0200) 1 commit - + builtin-fast-export: Add importing and exporting of revision marks - ----------------------------------------------------------------- -[Graduated to "master"] - -Nothing today but expect many small ones to come out of 'next' this -weekend. - ----------------------------------------------------------------- -[On Hold] - -* jc/blame (Wed Jun 4 22:58:40 2008 -0700) 7 commits - - blame: show "previous" information in --porcelain/--incremental - format - - git-blame: refactor code to emit "porcelain format" output - + git-blame --reverse - + builtin-blame.c: allow more than 16 parents - + builtin-blame.c: move prepare_final() into a separate function. - + rev-list --children - + revision traversal: --children option - -The blame that finds where each line in the original lines moved to. This -may help a GSoC project that wants to gather statistical overview of the -history. The final presentation may need tweaking (see the log message of -the commit ""git-blame --reverse" on the series). - -The tip two commits are for peeling to see what's behind the blamed -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. - -* 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= - - 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. - -* 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 - -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: - lines - - 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. - diff --git a/whats/cooking/2008/06/02.txt b/whats/cooking/2008/06/02.txt deleted file mode 100644 index 2054edb780..0000000000 --- a/whats/cooking/2008/06/02.txt +++ /dev/null @@ -1,329 +0,0 @@ -What's cooking in git.git (Jun 2008, issue #02; Mon, 23) --------------------------------------------------------- - -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. - -It already is beginning to become clear what 1.6.0 will look like. What'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 are -good set of feature enhancements. But bigger changes will be: - - * MinGW will be in. - - * /usr/bin/git-cat-file is no more. The bulk of the git commands will - move to /usr/libexec/git-core/ or somesuch. - - * git-merge will be rewritten in C. - -Currently tip of 'pu' is broken and does not pass tests, as j6t/mingw has -interaction with dr/ceiling and jc/merge-theirs has interaction with -mv/merge-in-c. - ----------------------------------------------------------------- -[New Topics] - -* 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 - -* 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 - -* sb/maint-rebase (Sun Jun 22 16:07:02 2008 +0200) 1 commit - + git-rebase.sh: Add check if rebase is in progress - ----------------------------------------------------------------- -[Will merge to master soon] - -* 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 "i18n" and "branch" config parsing into helper - routines - + Split up default "user" config parsing into helper routine - + Split up default "core" config parsing into helper routine - -* nd/dashless (Wed Nov 28 23:21:57 2007 +0700) 1 commit - + Move all dashed-form commands to libexecdir - -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 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 - - parseopt: add a new PARSE_OPT_ARGV0_IS_AN_OPTION option - - Add new test to ensure git-merge handles pull.twohead and - pull.octopus - - Move parse-options's skip_prefix() to git-compat-util.h - - Move commit_list_count() to commit.c - - Move split_cmdline() to alias.c - -* jc/dashless (Sat Dec 1 22:09:22 2007 -0800) 2 commits - - Prepare execv_git_cmd() for removal of builtins from the - filesystem - - git-shell: accept "git foo" form - -We do not plan to remove git-foo form completely from the filesystem at -this point, but git-shell may need to be updated. - -* 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 - ----------------------------------------------------------------- -[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 - -* kh/update-ref (Tue Jun 3 01:34:53 2008 +0200) 2 commits - + Make old sha1 optional with git update-ref -d - + Clean up builtin-update-ref's option parsing - -* mo/status-untracked (Thu Jun 5 14:47:50 2008 +0200) 3 commits - + Add configuration option for default untracked files mode - + Add argument 'no' commit/status option -u|--untracked-files - + Add an optional argument to commit/status -u|--untracked- - files option - -* 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 - + avoid whitespace on empty line in automatic usage message - + mask necessary whitespace policy violations in test scripts - + fix whitespace violations in test scripts - -Tightens whitespace rules for t/*.sh scripts. - -* pb/fast-export (Wed Jun 11 13:17:04 2008 +0200) 1 commit - + builtin-fast-export: Add importing and exporting of revision marks - ----------------------------------------------------------------- -[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 - -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. - ----------------------------------------------------------------- -[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 - format - - git-blame: refactor code to emit "porcelain format" output - + git-blame --reverse - + builtin-blame.c: allow more than 16 parents - + builtin-blame.c: move prepare_final() into a separate function. - + rev-list --children - + revision traversal: --children option - -The blame that finds where each line in the original lines moved to. This -may help a GSoC project that wants to gather statistical overview of the -history. The final presentation may need tweaking (see the log message of -the commit ""git-blame --reverse" on the series). - -The tip two commits are for peeling to see what's behind the blamed -commit, which we should be able to separate out into an independent topic -from the rest. - ----------------------------------------------------------------- -[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= - . New merge tests - . Documentation for joining more than two histories - -This will interfere with Miklos's rewrite of merge to C. - -* 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 - -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: - lines - . 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 - diff --git a/whats/cooking/2008/06/03.txt b/whats/cooking/2008/06/03.txt deleted file mode 100644 index ed5a24e1c6..0000000000 --- a/whats/cooking/2008/06/03.txt +++ /dev/null @@ -1,295 +0,0 @@ -What's cooking in git.git (Jun 2008, issue #03; Wed, 25) --------------------------------------------------------- - -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. - -It already is beginning to become clear what 1.6.0 will look like. What'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 are -good set of feature enhancements. But bigger changes will be: - - * MinGW will be in. - - * /usr/bin/git-cat-file is no more. The bulk of the git commands will - move to /usr/libexec/git-core/ or somesuch. - - * git-merge will be rewritten in C. - - * default pack and idx versions will be updated as scheduled for some - time ago. - ----------------------------------------------------------------- -[New Topics] - -* ph/parseopt-step-blame (Tue Jun 24 11:12:12 2008 +0200) 7 commits - - Migrate git-blame to parse-option partially. - - parse-opt: add PARSE_OPT_KEEP_ARGV0 parser option. - - parse-opt: fake short strings for callers to believe in. - - parse-opt: do not pring errors on unknown options, return -2 - intead. - - parse-opt: create parse_options_step. - - parse-opt: Export a non NORETURN usage dumper. - - parse-opt: have parse_options_{start,end}. - ----------------------------------------------------------------- -[Will merge to master soon] - -* 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 "i18n" and "branch" config parsing into helper - routines - + Split up default "user" config parsing into helper routine - + Split up default "core" config parsing into helper routine - -* nd/dashless (Tue Jun 24 19:58:11 2008 -0700) 2 commits - + Keep some git-* programs in $(bindir) - + Move all dashed-form commands to libexecdir - -Scheduled for 1.6.0. We'll leave server-side programs in $(bindir) -so that ssh clients can ask for "git-program" and find them on the $PATH. - -* 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) 12 commits - - Add new test case to ensure git-merge reduces octopus parents when - possible - - Build in merge - - 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 - - Add new test to ensure git-merge handles pull.twohead and - pull.octopus - - Move parse-options's skip_prefix() to git-compat-util.h - - Move commit_list_count() to commit.c - - Move split_cmdline() to alias.c - -I dropped the change to parseopt in this series and fixed up the caller. - -* jc/dashless (Sat Dec 1 22:09:22 2007 -0800) 2 commits - + Prepare execv_git_cmd() for removal of builtins from the - filesystem - + git-shell: accept "git foo" form - -We do not plan to remove git-foo form completely from the filesystem at -this point, but git-shell may need to be updated. - -* 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 - -* 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 - -* 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 - -* sb/maint-rebase (Sun Jun 22 16:07:02 2008 +0200) 1 commit - + git-rebase.sh: Add check if rebase is in progress - ----------------------------------------------------------------- -[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) 39 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(). - - Make my_mktime() public and rename it to tm_to_time_t() - - 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: Handle absolute paths in - safe_create_leading_directories(). - - Windows: Treat Windows style path names. - - setup.c: Prepare for Windows directory separators. - - 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, except that template renaming hack won't be needed anymore. - -* 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. - ----------------------------------------------------------------- -[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 - format - - git-blame: refactor code to emit "porcelain format" output - + git-blame --reverse - + builtin-blame.c: allow more than 16 parents - + builtin-blame.c: move prepare_final() into a separate function. - + rev-list --children - + revision traversal: --children option - -The blame that finds where each line in the original lines moved to. This -may help a GSoC project that wants to gather statistical overview of the -history. The final presentation may need tweaking (see the log message of -the commit ""git-blame --reverse" on the series). - -The tip two commits are for peeling to see what's behind the blamed -commit, which we should be able to separate out into an independent topic -from the rest. - ----------------------------------------------------------------- -[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= - . New merge tests - . Documentation for joining more than two histories - -This will interfere with Miklos's rewrite of merge to C. - -* 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 - -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: - lines - . 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 - diff --git a/whats/cooking/2008/06/04.txt b/whats/cooking/2008/06/04.txt deleted file mode 100644 index a8179ed5e9..0000000000 --- a/whats/cooking/2008/06/04.txt +++ /dev/null @@ -1,339 +0,0 @@ -What's cooking in git.git (Jun 2008, issue #04; Mon, 30) --------------------------------------------------------- - -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. What'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 are -good set of feature enhancements. Bigger changes will be: - - * MinGW will be in. - - * With the default Makefile settings, most of the programs will be - installed outside your $PATH, except for "git", "gitk", "git-gui" and - 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 in - 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. - ----------------------------------------------------------------- -[Will merge to master soon] - -* nd/dashless (Tue Jun 24 19:58:11 2008 -0700) 2 commits - + Keep some git-* programs in $(bindir) - + Move all dashed-form commands to libexecdir - -Scheduled for 1.6.0. We'll leave server-side programs in $(bindir) so -that ssh clients can ask for "git-program" and find them on the $PATH. -Next major release after 1.6.0 would most likely remove the hardlinks to -built-in commands, but not yet. - -* sg/merge-options (Sun Apr 6 03:23:47 2008 +0200) 1 commit - + merge: remove deprecated summary and diffstat options and config - variables - -* jc/dashless (Thu Jun 26 16:43:34 2008 -0700) 4 commits - + Revert "Make clients ask for "git program" over ssh and local - transport" - + Make clients ask for "git program" over ssh and local transport - + Prepare execv_git_cmd() for removal of builtins from the - filesystem - + git-shell: accept "git foo" form - ----------------------------------------------------------------- -[Actively Cooking] - -* jk/maint-fetch-ref-hier (Fri Jun 27 00:01:41 2008 -0400) 2 commits - + fetch: give a hint to the user when local refs fail to update - + fetch: report local storage errors in status table - -When the remote used to have "foo" branch but now has "foo/bar", fetch -refuses to delete the existing remote tracking branch "foo" to create a -new remote tracking branch "foo/bar", but the error message was -confusing. - -* jc/maint-reset (Wed Jun 25 18:16:36 2008 -0700) 1 commit - + Allow "git-reset path" when unambiguous - -We used to require "git-reset -- path" even when there is no ambiguity -(i.e. path cannot be mistaken as a valid tree-ish and it is a filename in -the work tree). - -* js/maint-clone-insteadof (Fri Jun 27 13:55:23 2008 +0100) 2 commits - + clone: respect the settings in $HOME/.gitconfig and /etc/gitconfig - + clone: respect url.insteadOf setting in global configs - -"git clone" did not honor "url.InsteadOf" in $HOME/.gitconfig. I think -Daniel's "Let's get rid of internal use of GIT_CONFIG" makes sense (even -though it feels very scary), and it would make the solution much simpler, -but it came late and it is already past my bedtime, so... - -* tr/send-email-ssl (Thu Jun 26 23:03:21 2008 +0200) 2 commits - + git-send-email: prevent undefined variable warnings if no - encryption is set - + git-send-email: add support for TLS via Net::SMTP::SSL - -* kb/send-email-fifo (Wed Jun 25 15:44:40 2008 -0700) 1 commit - + git-send-email: Accept fifos as well as files - -Two minor send-email feature enhancements for 1.6.0. - -* jc/checkdiff (Sun Jun 29 16:49:06 2008 -0400) 7 commits - + Fix t4017-diff-retval for white-space from wc - + Update sample pre-commit hook to use "diff --check" - + diff --check: detect leftover conflict markers - + Teach "diff --check" about new blank lines at end - + checkdiff: pass diff_options to the callback - + check_and_emit_line(): rename and refactor - + diff --check: explain why we do not care whether old side is - binary - -Allows us to replace the sample pre-commit hook that was not aware of the -line termination convention per path nor newer whitespace breakage rules. - -* np/pack-default (Wed Jun 25 00:25:53 2008 -0400) 2 commits - + pack.indexversion config option now defaults to 2 - + repack.usedeltabaseoffset config option now defaults to "true" - -Updates the default value for pack.indexversion to 2 and use delta-base -offset encoding of the packfiles by default. - -* js/apply-recount (Fri Jun 27 18:43:09 2008 +0100) 1 commit - + Allow git-apply to recount the lines in a hunk (AKA recountdiff) - -A good ingredient for implementing "apply --edit". - -* dz/apply-again (Fri Jun 27 14:39:12 2008 -0400) 1 commit - + git-apply: handle a patch that touches the same path more than - once better - -Allows us to feed a patch that touches the same path more than once. - -* 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. - -* jc/merge-theirs (Sat Jun 28 17:28:22 2008 -0700) 3 commits - + Teach git-merge to pass -X