From 623b71987214dd2794b3c1ea7e2fc1ce9b5d448e Mon Sep 17 00:00:00 2001 From: Junio C Hamano Date: Thu, 16 Oct 2014 14:28:44 -0700 Subject: [PATCH] What's cooking (2014/10 #04) --- whats-cooking.txt | 525 +++++++++++++++++++++++++----------------------------- 1 file changed, 240 insertions(+), 285 deletions(-) diff --git a/whats-cooking.txt b/whats-cooking.txt index ea67bc2c3e..5ed63618fc 100644 --- a/whats-cooking.txt +++ b/whats-cooking.txt @@ -1,10 +1,10 @@ To: git@vger.kernel.org Bcc: lwn@lwn.net -Subject: What's cooking in git.git (Oct 2014, #03; Tue, 14) -X-master-at: 670a3c1d5a27bfb1cc6b526559c6f5874f00042f -X-next-at: 1f81b4665aea1209bb138fc973dd7b28b6696920 +Subject: What's cooking in git.git (Oct 2014, #04; Thu, 16) +X-master-at: 98349e5364da6164add4ede3e63ceba2cc39159b +X-next-at: 26a8a7df7daa247250ed7881245ac01138463bad -What's cooking in git.git (Oct 2014, #03; Tue, 14) +What's cooking in git.git (Oct 2014, #04; Thu, 16) -------------------------------------------------- Here are the topics that have been cooking. Commits prefixed with @@ -19,232 +19,108 @@ of the repositories listed at -------------------------------------------------- [Graduated to "master"] -* bc/asciidoc-pretty-formats-fix (2014-10-08) 1 commit - (merged to 'next' on 2014-10-13 at 8208335) - + Documentation: fix misrender of pretty-formats in Asciidoctor - - -* da/completion-show-signature (2014-10-07) 1 commit - (merged to 'next' on 2014-10-07 at 2467c19) - + completion: add --show-signature for log and show +* bw/trace-no-inline-getnanotime (2014-09-29) 1 commit + (merged to 'next' on 2014-10-14 at 19facbb) + + trace.c: do not mark getnanotime() as "inline" + No file-scope static variables in an inlined function, please. -* da/include-compat-util-first-in-c (2014-09-15) 1 commit - (merged to 'next' on 2014-10-07 at ea5bcb4) - + cleanups: ensure that git-compat-util.h is included first - Code clean-up. +* jc/completion-no-chdir (2014-10-09) 1 commit + (merged to 'next' on 2014-10-14 at 1cf12e1) + + completion: use "git -C $there" instead of (cd $there && git ...) -* dt/cache-tree-repair (2014-09-30) 1 commit - (merged to 'next' on 2014-10-07 at 923bd93) - + t0090: avoid passing empty string to printf %d - (this branch is used by jk/prune-mtime.) +* po/everyday-doc (2014-10-10) 3 commits + (merged to 'next' on 2014-10-13 at daf1d03) + + doc: add 'everyday' to 'git help' + + doc: Makefile regularise OBSOLETE_HTML list building + + doc: modernise everyday.txt wording and format in man page style - This fixes a topic that has graduated to 'master'. - - -* mh/lockfile (2014-10-01) 38 commits - (merged to 'next' on 2014-10-08 at 39cb6da) - + lockfile.h: extract new header file for the functions in lockfile.c - + hold_locked_index(): move from lockfile.c to read-cache.c - + hold_lock_file_for_append(): restore errno before returning - + get_locked_file_path(): new function - + lockfile.c: rename static functions - + lockfile: rename LOCK_NODEREF to LOCK_NO_DEREF - + commit_lock_file_to(): refactor a helper out of commit_lock_file() - + trim_last_path_component(): replace last_path_elm() - + resolve_symlink(): take a strbuf parameter - + resolve_symlink(): use a strbuf for internal scratch space - + lockfile: change lock_file::filename into a strbuf - + commit_lock_file(): use a strbuf to manage temporary space - + try_merge_strategy(): use a statically-allocated lock_file object - + try_merge_strategy(): remove redundant lock_file allocation - + struct lock_file: declare some fields volatile - + lockfile: avoid transitory invalid states - + git_config_set_multivar_in_file(): avoid call to rollback_lock_file() - + dump_marks(): remove a redundant call to rollback_lock_file() - + api-lockfile: document edge cases - + commit_lock_file(): rollback lock file on failure to rename - + close_lock_file(): if close fails, roll back - + commit_lock_file(): die() if called for unlocked lockfile object - + commit_lock_file(): inline temporary variable - + remove_lock_file(): call rollback_lock_file() - + lock_file(): exit early if lockfile cannot be opened - + prepare_index(): declare return value to be (const char *) - + delete_ref_loose(): don't muck around in the lock_file's filename - + cache.h: define constants LOCK_SUFFIX and LOCK_SUFFIX_LEN - + lockfile.c: document the various states of lock_file objects - + lock_file(): always initialize and register lock_file object - + hold_lock_file_for_append(): release lock on errors - + lockfile: unlock file if lockfile permissions cannot be adjusted - + rollback_lock_file(): set fd to -1 - + rollback_lock_file(): exit early if lock is not active - + rollback_lock_file(): do not clear filename redundantly - + close_lock_file(): exit (successfully) if file is already closed - + api-lockfile: revise and expand the documentation - + unable_to_lock_die(): rename function from unable_to_lock_index_die() - (this branch is used by mh/lockfile-stdio.) - - The lockfile API and its users have been cleaned up. - - -* mh/lockfile-stdio (2014-10-01) 3 commits - (merged to 'next' on 2014-10-08 at e56cebc) - + commit_packed_refs(): reimplement using fdopen_lock_file() - + dump_marks(): reimplement using fdopen_lock_file() - + fdopen_lock_file(): access a lockfile using stdio - (this branch uses mh/lockfile.) - - -* rs/daemon-fixes (2014-10-01) 3 commits - (merged to 'next' on 2014-10-07 at 4171e10) - + daemon: remove write-only variable maxfd - + daemon: fix error message after bind() - + daemon: handle gethostbyname() error - - "git daemon" (with NO_IPV6 build configuration) used to incorrectly - use the hostname even when gethostbyname() reported that the given - hostname is not found. - - -* rs/mailsplit (2014-10-07) 1 commit - (merged to 'next' on 2014-10-08 at 58b053e) - + mailsplit: remove unnecessary unlink(2) call - - -* rs/more-uses-of-skip-prefix (2014-10-07) 1 commit - (merged to 'next' on 2014-10-08 at cd153c0) - + use skip_prefix() to avoid more magic numbers - - -* rs/plug-leak-in-bundle (2014-10-07) 1 commit - (merged to 'next' on 2014-10-08 at 5539cd7) - + bundle: plug minor memory leak in is_tag_in_date_range() - - -* rs/sha1-array-test (2014-10-01) 2 commits - (merged to 'next' on 2014-10-08 at 5960711) - + sha1-lookup: handle duplicates in sha1_pos() - + sha1-array: add test-sha1-array and basic tests - - -* sk/tag-contains-wo-recursion (2014-09-23) 1 commit - (merged to 'next' on 2014-10-08 at e425f54) - + t7004: give the test a bit more stack space - - -* so/rebase-doc-fork-point (2014-09-29) 1 commit - (merged to 'next' on 2014-10-07 at 03d8ed6) - + Documentation/git-rebase.txt: document when --fork-point is auto-enabled + "git help everyday" to show the Everyday Git document. -------------------------------------------------- [New Topics] -* bc/asciidoc (2014-10-13) 2 commits - (merged to 'next' on 2014-10-14 at d9ff206) - + Documentation: fix mismatched delimiters in git-imap-send - + Documentation: adjust document title underlining - - Formatting nitpicks to help a (pickier) reimplementation of - AsciiDoc to grok our documentation. +* da/mergetool-temporary-directory (2014-10-16) 2 commits + - t7610-mergetool: add test cases for mergetool.writeToTemp + - mergetool: add an option for writing to a temporary directory + (this branch uses da/mergetool-temporary-filename and da/mergetool-tests; is tangled with da/mergetool-tool-help.) - Will merge to 'master'. + Allow a temporary directory specified to be used while running "git + mergetool" backend. + Will merge to 'next'. -* da/mergetool-tool-help (2014-10-13) 4 commits - - difftool: don't assume that default sh is sane - - mergetool: don't require a work tree for --tool-help - - git-sh-setup: move GIT_DIR initialization into a function - - mergetool: use more conservative temporary filenames - (this branch is tangled with da/mergetool-temporary-filename.) - Allow "git mergetool --help" to run outside a Git repository. +* da/mergetool-tests (2014-10-16) 4 commits + - test-lib-functions: adjust style to match CodingGuidelines + - t7610-mergetool: use test_config to isolate tests + - t7610-mergetool: add missing && and remove commented-out code + - t7610-mergetool: use tabs instead of a mix of tabs and spaces + (this branch is used by da/mergetool-temporary-directory and da/mergetool-temporary-filename; is tangled with da/mergetool-tool-help.) - May want some tests before merging down. + The clean-up of this test script was long overdue and is a very + welcome change. + Will merge to 'next'. -* eb/no-pthreads (2014-10-13) 2 commits - - pack-objects: set number of threads before checking and warning - - index-pack: fix compilation with NO_PTHREADS - Allow us build with NO_PTHREADS=NoThanks compilation option. The - last change (not queued) needs a bit more explanation in its log - message. +* bc/asciidoctor (2014-10-15) 2 commits + - Documentation: implement linkgit macro for Asciidoctor + - Documentation: move some AsciiDoc parameters into variables + (this branch uses bc/asciidoc.) + Add machinery to alternatively use AsciiDoctor to format our + documentation. -* jk/test-shell-trace (2014-10-13) 3 commits - (merged to 'next' on 2014-10-14 at 9118506) - + test-lib.sh: support -x option for shell-tracing - + t5304: use helper to report failure of "test foo = bar" - + t5304: use test_path_is_* instead of "test -f" + Will merge to 'next'. - Test scripts were taught to notice "-x" option to show shell trace, - as if the tests were run under "sh -x". - Will merge to 'master'. +* da/mergetool-meld (2014-10-16) 1 commit + - mergetools/meld: make usage of `--output` configurable and more robust + Newer versions of 'meld' breaks the auto-detection we use to see if + they are new enough to support the `--output` option. -* rs/receive-pack-argv-leak-fix (2014-10-13) 1 commit - (merged to 'next' on 2014-10-14 at e64654d) - + receive-pack: plug minor memory leak in unpack() - - Will merge to 'master'. - + Will merge to 'next'. -* ta/config-set (2014-10-13) 1 commit - (merged to 'next' on 2014-10-14 at ed660e4) - + t1308: fix broken here document in test script - Will merge to 'master'. +* rm/gitweb-start-form (2014-10-16) 1 commit + - gitweb: use start_form, not startform that was removed in CGI.pm 4.04 + Will merge to 'next'. -* jc/checkout-local-track-report (2014-10-14) 1 commit - - checkout: report upstream correctly even with loosely defined branch.*.merge - The report from "git checkout" on a branch that builds on another - local branch by setting its branch.*.merge to branch name (not a - full refname) incorrectly said that the upstream is gone. +* ss/contrib-subtree-contacts (2014-10-15) 2 commits + - contacts: add a Makefile to generate docs and install + - subtree: add an install-html target + Will merge to 'next'. -* jc/clone-borrow (2014-10-14) 1 commit - - clone: --dissociate option to mark that reference is only temporary +-------------------------------------------------- +[Stalled] - Allow "git clone --reference" to be used more safely. +* je/quiltimport-no-fuzz (2014-09-26) 2 commits + - git-quiltimport: flip the default not to allow fuzz + - git-quiltimport.sh: allow declining fuzz with --exact option + "quiltimport" drove "git apply" always with -C1 option to reduce + context of the patch in order to give more chance to somewhat stale + patches to apply. Add an "--exact" option to disable, and also + "-C$n" option to customize this behaviour. The top patch + optionally flips the default to "--exact". -* js/completion-hide-not-a-repo (2014-10-14) 1 commit - - completion: silence "fatal: Not a git repository" error + Waiting for an Ack. - Some internal error messages leaked out of the bash completion when - typing "git cmd " and the machinery tried to complete - refnames. --------------------------------------------------- -[Stalled] +* eb/no-pthreads (2014-10-13) 2 commits + - pack-objects: set number of threads before checking and warning + - index-pack: fix compilation with NO_PTHREADS -* rs/ref-transaction (2014-09-10) 19 commits - . ref_transaction_commit: bail out on failure to remove a ref - . lockfile: remove unable_to_lock_error - . refs.c: do not permit err == NULL - . for-each-ref.c: improve message before aborting on broken ref - . refs.c: fix handling of badly named refs - . branch -d: avoid repeated symref resolution - . refs.c: change resolve_ref_unsafe reading argument to be a flags field - . refs.c: make write_ref_sha1 static - . fetch.c: change s_update_ref to use a ref transaction - . refs.c: ref_transaction_commit: distinguish name conflicts from other errors - . refs.c: pass a skip list to name_conflict_fn - . refs.c: call lock_ref_sha1_basic directly from commit - . refs.c: move the check for valid refname to lock_ref_sha1_basic - . rename_ref: don't ask read_ref_full where the ref came from - . refs.c: pass the ref log message to _create/delete/update instead of _commit - . refs.c: add an err argument to delete_ref_loose - . wrapper.c: add a new function unlink_or_msg - . wrapper.c: remove/unlink_or_warn: simplify, treat ENOENT as success - . mv test: recreate mod/ directory instead of relying on stale copy - - Expecting the final reroll. + Allow us build with NO_PTHREADS=NoThanks compilation option. The + last change (not queued) needs a bit more explanation in its log + message. * tr/remerge-diff (2014-09-08) 8 commits @@ -403,79 +279,171 @@ of the repositories listed at -------------------------------------------------- [Cooking] -* jk/prune-mtime (2014-10-04) 18 commits - . write_sha1_file: freshen existing objects - . pack-objects: match prune logic for discarding objects - . pack-objects: refactor unpack-unreachable expiration check - . prune: keep objects reachable from recent objects - . sha1_file: add for_each iterators for loose and packed objects - . count-objects: use for_each_loose_file_in_objdir - . count-objects: do not use xsize_t when counting object size - . prune: factor out loose-object directory traversal - . t5304: use helper to report failure of "test foo = bar" - . t5304: use test_path_is_* instead of "test -f" - . reachable: clear pending array after walking it - . clean up name allocation in prepare_revision_walk - . object_array: add a "clear" function - . object_array: factor out slopbuf-freeing logic - . isxdigit: cast input to unsigned char - . foreach_alt_odb: propagate return value from callback - . Merge branch 'dt/cache-tree-repair' into jk/prune-mtime - . Merge branch 'jc/reopen-lock-file' into jk/prune-mtime +* jk/prune-mtime (2014-10-16) 25 commits + - pack-objects: double-check options before discarding objects + - repack: pack objects mentioned by the index + - pack-objects: use argv_array + - reachable: use revision machinery's --index-objects code + - rev-list: add --index-objects option + - rev-list: document --reflog option + - traverse_commit_list: support pending blobs/trees with paths + - make add_object_array_with_context interface more sane + - write_sha1_file: freshen existing objects + - pack-objects: match prune logic for discarding objects + - pack-objects: refactor unpack-unreachable expiration check + - prune: keep objects reachable from recent objects + - sha1_file: add for_each iterators for loose and packed objects + - count-objects: use for_each_loose_file_in_objdir + - count-objects: do not use xsize_t when counting object size + - prune-packed: use for_each_loose_file_in_objdir + - reachable: mark index blobs as SEEN + - prune: factor out loose-object directory traversal + - reachable: reuse revision.c "add all reflogs" code + - reachable: use traverse_commit_list instead of custom walk + - clean up name allocation in prepare_revision_walk + - object_array: add a "clear" function + - object_array: factor out slopbuf-freeing logic + - isxdigit: cast input to unsigned char + - foreach_alt_odb: propagate return value from callback + (this branch uses jk/test-shell-trace.) + + Looked mostly sensible modulo minor nits (and I wasn't looking for + typos very carefully). Object enumeration is broken. + + +* rs/ref-transaction (2014-10-15) 25 commits + - ref_transaction_commit: bail out on failure to remove a ref + - lockfile: remove unable_to_lock_error + - refs.c: do not permit err == NULL + - remote rm/prune: print a message when writing packed-refs fails + - for-each-ref: skip and warn about broken ref names + - refs.c: allow listing and deleting badly named refs + - test: put tests for handling of bad ref names in one place + - packed-ref cache: forbid dot-components in refnames + - branch -d: simplify by using RESOLVE_REF_READING + - branch -d: avoid repeated symref resolution + - reflog test: test interaction with detached HEAD + - refs.c: change resolve_ref_unsafe reading argument to be a flags field + - refs.c: make write_ref_sha1 static + - fetch.c: change s_update_ref to use a ref transaction + - refs.c: ref_transaction_commit: distinguish name conflicts from other errors + - refs.c: pass a list of names to skip to is_refname_available + - refs.c: call lock_ref_sha1_basic directly from commit + - refs.c: refuse to lock badly named refs in lock_ref_sha1_basic + - rename_ref: don't ask read_ref_full where the ref came from + - refs.c: pass the ref log message to _create/delete/update instead of _commit + - refs.c: add an err argument to delete_ref_loose + - wrapper.c: add a new function unlink_or_msg + - refs.c: lock_ref_sha1_basic is used for all refs + - wrapper.c: remove/unlink_or_warn: simplify, treat ENOENT as success + - mv test: recreate mod/ directory instead of relying on stale copy + + The API to update refs have been restructured to allow introducing + a true transactional updates later. We would even allow storing + refs in backends other than the traditional filesystem-based one. - Expecting a reroll. + Will merge to 'next'. -* jn/parse-config-slot (2014-10-14) 2 commits - (merged to 'next' on 2014-10-14 at 7f0a3ad) - + color_parse: do not mention variable name in error message - + pass config slots as pointers instead of offsets +* bc/asciidoc (2014-10-13) 2 commits + (merged to 'next' on 2014-10-14 at d9ff206) + + Documentation: fix mismatched delimiters in git-imap-send + + Documentation: adjust document title underlining + (this branch is used by bc/asciidoctor.) - Code cleanup. + Formatting nitpicks to help a (pickier) reimplementation of + AsciiDoc to grok our documentation. Will merge to 'master'. -* da/mergetool-temporary-filename (2014-10-13) 2 commits - - mergetool: add an option for writing to a temporary directory +* da/mergetool-tool-help (2014-10-15) 8 commits + - difftool: don't assume that default sh is sane + - mergetool: don't require a work tree for --tool-help + - git-sh-setup: move GIT_DIR initialization into a function - mergetool: use more conservative temporary filenames - (this branch is tangled with da/mergetool-tool-help.) + - test-lib-functions: adjust style to match CodingGuidelines + - t7610-mergetool: prefer test_config over git config + - t7610-mergetool: add missing && and remove commented-out code + - t7610-mergetool: use tabs instead of a mix of tabs and spaces + (this branch is tangled with da/mergetool-temporary-directory, da/mergetool-temporary-filename and da/mergetool-tests.) - Tweak the names of the three throw-away files "git mergetool" comes - up with to feed the merge tool backend, so that a file with a - single dot in its name in the original (e.g. "hello.c") will have - only one dot in these variants (e.g. "hello_BASE_4321.c"). + Allow "git mergetool --help" to run outside a Git repository. Will merge to 'next'. -* jc/completion-no-chdir (2014-10-09) 1 commit - (merged to 'next' on 2014-10-14 at 1cf12e1) - + completion: use "git -C $there" instead of (cd $there && git ...) +* jk/test-shell-trace (2014-10-13) 3 commits + (merged to 'next' on 2014-10-14 at 9118506) + + test-lib.sh: support -x option for shell-tracing + + t5304: use helper to report failure of "test foo = bar" + + t5304: use test_path_is_* instead of "test -f" + (this branch is used by jk/prune-mtime.) + + Test scripts were taught to notice "-x" option to show shell trace, + as if the tests were run under "sh -x". Will merge to 'master'. -* bw/trace-no-inline-getnanotime (2014-09-29) 1 commit - (merged to 'next' on 2014-10-14 at 19facbb) - + trace.c: do not mark getnanotime() as "inline" +* rs/receive-pack-argv-leak-fix (2014-10-13) 1 commit + (merged to 'next' on 2014-10-14 at e64654d) + + receive-pack: plug minor memory leak in unpack() + + Will merge to 'master'. - No file-scope static variables in an inlined function, please. + +* ta/config-set (2014-10-13) 1 commit + (merged to 'next' on 2014-10-14 at ed660e4) + + t1308: fix broken here document in test script Will merge to 'master'. -* po/everyday-doc (2014-10-10) 3 commits - (merged to 'next' on 2014-10-13 at daf1d03) - + doc: add 'everyday' to 'git help' - + doc: Makefile regularise OBSOLETE_HTML list building - + doc: modernise everyday.txt wording and format in man page style +* jc/checkout-local-track-report (2014-10-14) 1 commit + - checkout: report upstream correctly even with loosely defined branch.*.merge - "git help everyday" to show the Everyday Git document. + The report from "git checkout" on a branch that builds on another + local branch by setting its branch.*.merge to branch name (not a + full refname) incorrectly said that the upstream is gone. + + +* jc/clone-borrow (2014-10-15) 1 commit + - clone: --dissociate option to mark that reference is only temporary + + Allow "git clone --reference" to be used more safely. + + +* js/completion-hide-not-a-repo (2014-10-14) 1 commit + - completion: silence "fatal: Not a git repository" error + + Some internal error messages leaked out of the bash completion when + typing "git cmd " and the machinery tried to complete + refnames. + + +* jn/parse-config-slot (2014-10-14) 2 commits + (merged to 'next' on 2014-10-14 at 7f0a3ad) + + color_parse: do not mention variable name in error message + + pass config slots as pointers instead of offsets + + Code cleanup. Will merge to 'master'. +* da/mergetool-temporary-filename (2014-10-16) 1 commit + - mergetool: use more conservative temporary filenames + (this branch is used by da/mergetool-temporary-directory; uses da/mergetool-tests; is tangled with da/mergetool-tool-help.) + + Tweak the names of the three throw-away files "git mergetool" comes + up with to feed the merge tool backend, so that a file with a + single dot in its name in the original (e.g. "hello.c") will have + only one dot in these variants (e.g. "hello_BASE_4321.c"). + + Will merge to 'next'. + + * jc/push-cert-hmac-optim (2014-09-25) 2 commits - receive-pack: truncate hmac early and convert only necessary bytes - sha1_to_hex: split out "hex-format n bytes" helper and use it @@ -486,58 +454,47 @@ of the repositories listed at Will perhaps drop. -* je/quiltimport-no-fuzz (2014-09-26) 2 commits - - git-quiltimport: flip the default not to allow fuzz - - git-quiltimport.sh: allow declining fuzz with --exact option - - "quiltimport" drove "git apply" always with -C1 option to reduce - context of the patch in order to give more chance to somewhat stale - patches to apply. Add an "--exact" option to disable, and also - "-C$n" option to customize this behaviour. The top patch - optionally flips the default to "--exact". - - Waiting for an Ack. - - * nd/multiple-work-trees (2014-09-27) 32 commits - - t2025: add a test to make sure grafts is working from a linked checkout - - checkout: don't require a work tree when checking out into a new one - - git_path(): keep "info/sparse-checkout" per work-tree - - count-objects: report unused files in $GIT_DIR/worktrees/... - - gc: support prune --worktrees - - gc: factor out gc.pruneexpire parsing code - - gc: style change -- no SP before closing parenthesis - - checkout: clean up half-prepared directories in --to mode - - checkout: reject if the branch is already checked out elsewhere - - prune: strategies for linked checkouts - - checkout: support checking out into a new working directory - - use new wrapper write_file() for simple file writing - - wrapper.c: wrapper to open a file, fprintf then close - - setup.c: support multi-checkout repo setup - - setup.c: detect $GIT_COMMON_DIR check_repository_format_gently() - - setup.c: convert check_repository_format_gently to use strbuf - - setup.c: detect $GIT_COMMON_DIR in is_git_directory() - - setup.c: convert is_git_directory() to use strbuf - - git-stash: avoid hardcoding $GIT_DIR/logs/.... - - *.sh: avoid hardcoding $GIT_DIR/hooks/... - - git-sh-setup.sh: use rev-parse --git-path to get $GIT_DIR/objects - - $GIT_COMMON_DIR: a new environment variable - - commit: use SEQ_DIR instead of hardcoding "sequencer" - - fast-import: use git_path() for accessing .git dir instead of get_git_dir() - - reflog: avoid constructing .lock path with git_path - - *.sh: respect $GIT_INDEX_FILE - - git_path(): be aware of file relocation in $GIT_DIR - - path.c: group git_path(), git_pathdup() and strbuf_git_path() together - - path.c: rename vsnpath() to do_git_path() - - git_snpath(): retire and replace with strbuf_git_path() - - path.c: make get_pathname() call sites return const char * - - path.c: make get_pathname() return strbuf instead of static buffer + . t2025: add a test to make sure grafts is working from a linked checkout + . checkout: don't require a work tree when checking out into a new one + . git_path(): keep "info/sparse-checkout" per work-tree + . count-objects: report unused files in $GIT_DIR/worktrees/... + . gc: support prune --worktrees + . gc: factor out gc.pruneexpire parsing code + . gc: style change -- no SP before closing parenthesis + . checkout: clean up half-prepared directories in --to mode + . checkout: reject if the branch is already checked out elsewhere + . prune: strategies for linked checkouts + . checkout: support checking out into a new working directory + . use new wrapper write_file() for simple file writing + . wrapper.c: wrapper to open a file, fprintf then close + . setup.c: support multi-checkout repo setup + . setup.c: detect $GIT_COMMON_DIR check_repository_format_gently() + . setup.c: convert check_repository_format_gently to use strbuf + . setup.c: detect $GIT_COMMON_DIR in is_git_directory() + . setup.c: convert is_git_directory() to use strbuf + . git-stash: avoid hardcoding $GIT_DIR/logs/.... + . *.sh: avoid hardcoding $GIT_DIR/hooks/... + . git-sh-setup.sh: use rev-parse --git-path to get $GIT_DIR/objects + . $GIT_COMMON_DIR: a new environment variable + . commit: use SEQ_DIR instead of hardcoding "sequencer" + . fast-import: use git_path() for accessing .git dir instead of get_git_dir() + . reflog: avoid constructing .lock path with git_path + . *.sh: respect $GIT_INDEX_FILE + . git_path(): be aware of file relocation in $GIT_DIR + . path.c: group git_path(), git_pathdup() and strbuf_git_path() together + . path.c: rename vsnpath() to do_git_path() + . git_snpath(): retire and replace with strbuf_git_path() + . path.c: make get_pathname() call sites return const char * + . path.c: make get_pathname() return strbuf instead of static buffer A replacement for contrib/workdir/git-new-workdir that does not rely on symbolic links and make sharing of objects and refs safer by making the borrowee and borrowers aware of each other. A few tests need some tweaks for MinGW ($gmane/{257756,257757}). + Conflicts with rs/ref-transaction so ejected for now, waiting for a + reroll. * cc/interpret-trailers (2014-10-13) 11 commits @@ -556,8 +513,6 @@ of the repositories listed at A new filter to programatically edit the tail end of the commit log messages. - Is this ready for 'next' now? - * mt/patch-id-stable (2014-06-10) 1 commit - patch-id: change default to stable -- 2.11.4.GIT