From 5d352bc39593f6677a609dc24cdfcc3f509d0f6c Mon Sep 17 00:00:00 2001 From: Junio C Hamano Date: Tue, 17 Dec 2013 15:57:46 -0800 Subject: [PATCH] What's cooking (2013/12 #04) --- whats-cooking.txt | 629 +++++++++++++++++++++++++----------------------------- 1 file changed, 287 insertions(+), 342 deletions(-) diff --git a/whats-cooking.txt b/whats-cooking.txt index eaf7ff90ad..7bf3090883 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 (Dec 2013, #03; Thu, 12) -X-master-at: d7aced95cd681b761468635f8d2a8b82d7ed26fd -X-next-at: aaad5e77ff44962de7a1fccb0c9def6b6dd228aa +Subject: What's cooking in git.git (Dec 2013, #04; Tue, 17) +X-master-at: 7794a680e63a2a11b73cb1194653662f2769a792 +X-next-at: 3e57c29e689448252d8f77d1a49492e7b4cdbfa4 -What's cooking in git.git (Dec 2013, #03; Thu, 12) +What's cooking in git.git (Dec 2013, #04; Tue, 17) -------------------------------------------------- Here are the topics that have been cooking. Commits prefixed with @@ -17,146 +17,141 @@ of the repositories listed at http://git-blame.blogspot.com/p/git-public-repositories.html -------------------------------------------------- -[New Topics] +[Graduated to "master"] * bc/doc-merge-no-op-revert (2013-12-09) 1 commit - - Documentation: document pitfalls with 3-way merge + (merged to 'next' on 2013-12-13 at 6e0ce64) + + Documentation: document pitfalls with 3-way merge - Will merge to 'next'. +* cc/starts-n-ends-with (2013-12-05) 4 commits + (merged to 'next' on 2013-12-12 at 76ee567) + + replace {pre,suf}fixcmp() with {starts,ends}_with() + + strbuf: introduce starts_with() and ends_with() + + builtin/remote: remove postfixcmp() and use suffixcmp() instead + + environment: normalize use of prefixcmp() by removing " != 0" + (this branch is used by cc/starts-n-ends-with-endgame.) -* cc/replace-object-info (2013-12-12) 10 commits - - Documentation/git-replace: describe --format option - - builtin/replace: unset read_replace_refs - - t6050: add tests for listing with --format - - builtin/replace: teach listing using short, medium or full formats - - sha1_file: perform object replacement in sha1_object_info_extended() - - t6050: show that git cat-file --batch fails with replace objects - - sha1_object_info_extended(): add an "unsigned flags" parameter - - sha1_file.c: add lookup_replace_object_extended() to pass flags - - replace_object: don't check read_replace_refs twice - - rename READ_SHA1_FILE_REPLACE flag to LOOKUP_REPLACE_OBJECT + Remove a few duplicate implementations of prefix/suffix comparison + functions, and rename them to starts_with and ends_with. - read_sha1_file() that is the workhorse to read the contents given - an object name honoured object replacements, but there is no - corresponding mechanism to sha1_object_info() that is used to - obtain the metainfo (e.g. type & size) about the object, leading - callers to weird inconsistencies. - Will merge to 'next'. +* fc/trivial (2013-12-09) 4 commits + (merged to 'next' on 2013-12-13 at eeead16) + + remote: fix status with branch...rebase=preserve + + fetch: add missing documentation + + t: trivial whitespace cleanups + + abspath: trivial style fix -* fc/completion (2013-12-09) 1 commit - - completion: fix completion of certain aliases +* jk/t5000-gzip-simplify (2013-12-04) 1 commit + (merged to 'next' on 2013-12-09 at e9010f1) + + t5000: simplify gzip prerequisite checks - Will merge to 'next'. + Test fix. -* fc/remote-helper-fixes (2013-12-09) 4 commits - - remote-hg: add tests for special filenames - - remote-hg: fix 'shared path' path - - remote-helpers: add extra safety checks - - remote-hg: avoid buggy strftime() +* jl/commit-v-strip-marker (2013-12-05) 1 commit + (merged to 'next' on 2013-12-09 at 2b85e9e) + + commit -v: strip diffs and submodule shortlogs from the commit message - Will merge to 'next'. + "git commit -v" appends the patch to the log message before + editing, and then removed the patch when the editor returned + control. However, the patch was not stripped correctly when the + first modified path was a submodule. -* fc/trivial (2013-12-09) 4 commits - - remote: fix status with branch...rebase=preserve - - fetch: add missing documentation - - t: trivial whitespace cleanups - - abspath: trivial style fix +* kb/doc-exclude-directory-semantics (2013-12-09) 1 commit + (merged to 'next' on 2013-12-09 at e54b2ec) + + gitignore.txt: clarify recursive nature of excluded directories - Will merge to 'next'. +* kn/gitweb-extra-branch-refs (2013-12-12) 4 commits + (merged to 'next' on 2013-12-12 at ae75b02) + + gitweb: Denote non-heads, non-remotes branches + + gitweb: Add a feature for adding more branch refs + + gitweb: Return 1 on validation success instead of passed input + + gitweb: Move check-ref-format code into separate function -* jk/cat-file-regression-fix (2013-12-12) 2 commits - - cat-file: handle --batch format with missing type/size - - cat-file: pass expand_data to print_object_or_die + Allow gitweb to be configured to show refs out of refs/heads/ as if + they were branches. - Will merge to 'next'. +* mm/mv-file-to-no-such-dir-with-slash (2013-12-04) 1 commit + (merged to 'next' on 2013-12-09 at f33bc0b) + + mv: let 'git mv file no-such-dir/' error out -* jk/pull-rebase-using-fork-point (2013-12-10) 2 commits - - rebase: use reflog to find common base with upstream - - pull: use merge-base --fork-point when appropriate - Will merge to 'next'. +* nd/gettext-vsnprintf (2013-12-04) 1 commit + (merged to 'next' on 2013-12-09 at e99106e) + + gettext.c: detect the vsnprintf bug at runtime -* jk/rev-parse-double-dashes (2013-12-09) 2 commits - - rev-parse: be more careful with munging arguments - - rev-parse: correctly diagnose revision errors before "--" +* nd/remove-opt-boolean (2013-12-09) 1 commit + (merged to 'next' on 2013-12-13 at 26f46cc) + + parse-options: remove OPT_BOOLEAN - "git rev-parse -- " did not implement the usual - disambiguation rules the commands in the "git log" family used in - the same way. - Will merge to 'next'. +* nd/transport-positive-depth-only (2013-12-06) 1 commit + (merged to 'next' on 2013-12-12 at f953cb8) + + clone,fetch: catch non positive --depth option value + "git fetch --depth=0" was a no-op, and was silently + ignored. Diagnose it as an error. -* mo/subtree-split-updates (2013-12-10) 3 commits - - subtree: add --edit option - - subtree: allow --squash and --message with push - - subtree: support split --rejoin --squash - Comments? +* tb/clone-ssh-with-colon-for-port (2013-12-09) 10 commits + (merged to 'next' on 2013-12-12 at ae4ae39) + + git_connect(): use common return point + + connect.c: refactor url parsing + + git_connect(): refactor the port handling for ssh + + git fetch: support host:/~repo + + t5500: add test cases for diag-url + + git fetch-pack: add --diag-url + + git_connect: factor out discovery of the protocol and its parts + + git_connect: remove artificial limit of a remote command + + t5601: add tests for ssh + + t5601: remove clear_ssh, refactor setup_ssh_wrapper + Be more careful when parsing remote repository URL given in the + scp-style host:path notation. -* nd/remove-opt-boolean (2013-12-09) 1 commit - - parse-options: remove OPT_BOOLEAN - Will merge to 'next'. +* tr/send-email-ssl (2013-12-04) 3 commits + (merged to 'next' on 2013-12-09 at facb859) + + send-email: set SSL options through IO::Socket::SSL::set_client_defaults + + send-email: --smtp-ssl-cert-path takes an argument + + send-email: pass Debug to Net::SMTP::SSL::new + SSL-related options were not passed correctly to underlying socket + layer in "git send-email". -* nd/shallow-clone (2013-12-10) 28 commits - - git-clone.txt: remove shallow clone limitations - - prune: clean .git/shallow after pruning objects - - clone: use git protocol for cloning shallow repo locally - - send-pack: support pushing from a shallow clone via http - - receive-pack: support pushing to a shallow clone via http - - smart-http: support shallow fetch/clone - - remote-curl: pass ref SHA-1 to fetch-pack as well - - send-pack: support pushing to a shallow clone - - receive-pack: allow pushes that update .git/shallow - - connected.c: add new variant that runs with --shallow-file - - add GIT_SHALLOW_FILE to propagate --shallow-file to subprocesses - - receive/send-pack: support pushing from a shallow clone - - receive-pack: reorder some code in unpack() - - fetch: add --update-shallow to accept refs that update .git/shallow - - upload-pack: make sure deepening preserves shallow roots - - fetch: support fetching from a shallow repository - - clone: support remote shallow repository - - fetch-pack.h: one statement per bitfield declaration - - fetch-pack.c: move shallow update code out of fetch_pack() - - shallow.c: steps 6 and 7 to select new commits for .git/shallow - - shallow.c: the 8 steps to select new commits for .git/shallow - - shallow.c: extend setup_*_shallow() to accept extra shallow commits - - connect.c: teach get_remote_heads to parse "shallow" lines - - make the sender advertise shallow commits to the receiver - - clone: prevent --reference to a shallow repository - - send-pack: forbid pushing from a shallow repository - - remote.h: replace struct extra_have_objects with struct sha1_array - - transport.h: remove send_pack prototype, already defined in send-pack.h +-------------------------------------------------- +[New Topics] - Fetching from a shallow-cloned repository used to be forbidden, - primarily because the codepaths involved were not carefully vetted - and we did not bother supporting such usage. This attempts to allow - object transfer out of a shallow-cloned repository in a controlled - way (i.e. the receiver become a shallow repository with truncated - history). +* ap/path-max (2013-12-16) 1 commit + - Prevent buffer overflows when path is too long + Will merge to 'next'. -* tg/diff-no-index-refactor (2013-12-12) 2 commits - - diff: don't read index when --no-index is given - - diff: move no-index detection to builtin/diff.c - "git diff ../else/where/A ../else/where/B" when ../else/where is - clearly outside the repository, and "git diff --no-index A B", do - not have to look at the index at all, but we used to read the index - unconditionally. +* mh/path-max (2013-12-17) 1 commit + - prune-packed: use strbuf to avoid having to worry about PATH_MAX - Will merge to 'next'. + This is my rewrite of Michael's patch to prune-packed (which still + had a hardcoded PATH_MAX limitation) using strbuf. Tweaking of the + other patch in the same series ($gmane/239386) for prune is left as + an exercise to the readers ;-) + +-------------------------------------------------- +[Stalled] + +* mo/subtree-split-updates (2013-12-10) 3 commits + - subtree: add --edit option + - subtree: allow --squash and --message with push + - subtree: support split --rejoin --squash + + Comments? * hv/submodule-ignore-fix (2013-12-06) 4 commits @@ -177,114 +172,33 @@ of the repositories listed at few nights ago I tried and failed and that was why it hasn't been merged to 'pu' so far). --------------------------------------------------- -[Graduated to "master"] -* cl/p4-use-diff-tree (2013-11-22) 1 commit - (merged to 'next' on 2013-12-06 at fc3c89e) - + git p4: Use git diff-tree instead of format-patch - - Originally merged to 'next' on 2013-11-27 - - -* cn/thin-push-capability (2013-11-25) 1 commit - (merged to 'next' on 2013-12-06 at a7ae524) - + send-pack: don't send a thin pack to a server which doesn't support it - - Allow receive-pack to insist on receiving a fat pack from "git - push" clients. - - -* jk/remove-deprecated (2013-12-05) 6 commits - (merged to 'next' on 2013-12-06 at c0c91a2) - + Sync with 1.8.5 - + stop installing git-tar-tree link - + peek-remote: remove deprecated alias of ls-remote - + lost-found: remove deprecated command - + tar-tree: remove deprecated command - + repo-config: remove deprecated alias for "git config" - (this branch is used by cc/starts-n-ends-with and cc/starts-n-ends-with-endgame.) - - Remove commands that have long been deprecated. - - -* jn/scripts-updates (2013-11-26) 7 commits - (merged to 'next' on 2013-12-06 at 60a7026) - + remove #!interpreter line from shell libraries - + test: replace shebangs with descriptions in shell libraries - + test: make FILEMODE a lazy prereq - + contrib: remove git-p4import - + mark contributed hooks executable - + mark perl test scripts executable - + mark Windows build scripts executable - - -* mh/fetch-tags-in-addition-to-normal-refs (2013-10-30) 23 commits - (merged to 'next' on 2013-12-06 at 3b9c44a) - + fetch: improve the error messages emitted for conflicting refspecs - + handle_duplicate(): mark error message for translation - + ref_remote_duplicates(): extract a function handle_duplicate() - + ref_remove_duplicates(): simplify loop logic - + t5536: new test of refspec conflicts when fetching - + ref_remove_duplicates(): avoid redundant bisection - + git-fetch.txt: improve description of tag auto-following - + fetch-options.txt: simplify ifdef/ifndef/endif usage - + fetch, remote: properly convey --no-prune options to subprocesses - + builtin/remote.c:update(): use struct argv_array - + builtin/remote.c: reorder function definitions - + query_refspecs(): move some constants out of the loop - + fetch --prune: prune only based on explicit refspecs - + fetch --tags: fetch tags *in addition to* other stuff - + fetch: only opportunistically update references based on command line - + get_expanded_map(): avoid memory leak - + get_expanded_map(): add docstring - + builtin/fetch.c: reorder function definitions - + get_ref_map(): rename local variables - + api-remote.txt: correct section "struct refspec" - + t5510: check that "git fetch --prune --tags" does not prune branches - + t5510: prepare test refs more straightforwardly - + t5510: use the correct tag name in test - - Originally merged to 'next' on 2013-11-06 - - The "--tags" option to "git fetch" used to be literally a synonym to - a "refs/tags/*:refs/tags/*" refspec, which meant that (1) as an - explicit refspec given from the command line, it silenced the lazy - "git fetch" default that is configured, and (2) also as an explicit - refspec given from the command line, it interacted with "--prune" - to remove any tag that the remote we are fetching from does not - have. - - This demotes it to an option; with it, we fetch all tags in - addition to what would be fetched without the option, and it does - not interact with the decision "--prune" makes to see what - remote-tracking refs the local has are missing the remote - counterpart. - - -* rs/doc-submitting-patches (2013-11-27) 1 commit - (merged to 'next' on 2013-12-06 at 0628818) - + SubmittingPatches: document how to handle multiple patches - - -* tr/commit-slab-cleanup (2013-12-02) 3 commits - (merged to 'next' on 2013-12-06 at faee247) - + commit-slab: sizeof() the right type in xrealloc - + commit-slab: declare functions "static inline" - + commit-slab: document clear_$slabname() - - -* tr/config-multivalue-lift-max (2013-12-06) 1 commit - (merged to 'next' on 2013-12-06 at 92afee2) - + config: arbitrary number of matches for --unset and --replace-all - - -* tr/doc-git-cherry (2013-11-27) 1 commit - (merged to 'next' on 2013-12-06 at 9a1ba7a) - + Documentation: revamp git-cherry(1) +* kb/fast-hashmap (2013-12-16) 17 commits + - hashmap.h: make sure map entries are tightly packed + (merged to 'next' on 2013-12-16 at bff99b1) + + Drop unnecessary #includes from test-hashmap + + Add test-hashmap to .gitignore + (merged to 'next' on 2013-12-06 at f90be3d) + + read-cache.c: fix memory leaks caused by removed cache entries + + builtin/update-index.c: cleanup update_one + + fix 'git update-index --verbose --again' output + + remove old hash.[ch] implementation + + name-hash.c: remove cache entries instead of marking them CE_UNHASHED + + name-hash.c: use new hash map implementation for cache entries + + name-hash.c: remove unreferenced directory entries + + name-hash.c: use new hash map implementation for directories + + diffcore-rename.c: use new hash map implementation + + diffcore-rename.c: simplify finding exact renames + + diffcore-rename.c: move code around to prepare for the next patch + + buitin/describe.c: use new hash map implementation + + add a hashtable implementation that supports O(1) removal + + submodule: don't access the .gitmodules cache entry after removing it + + Improvements to our hash table to get it to meet the needs of the + msysgit fscache project, with some nice performance improvements. + + The tip one does not seem to have reached concensus (yet). --------------------------------------------------- -[Stalled] * jc/create-directories-microopt (2013-11-11) 1 commit - checkout: most of the time we have good leading directories @@ -295,15 +209,6 @@ of the repositories listed at Will hold. -* nv/commit-gpgsign-config (2013-11-06) 1 commit - - Add the commit.gpgsign option to sign all commits - - Introduce commit.gpgsign configuration variable to force every - commit to be GPG signed. - - Needs tests, perhaps? - - * jt/commit-fixes-footer (2013-10-30) 1 commit - commit: Add -f, --fixes option to add Fixes: line @@ -448,6 +353,150 @@ of the repositories listed at -------------------------------------------------- [Cooking] +* nv/commit-gpgsign-config (2013-12-17) 3 commits + - test the commit.gpgsign config option + - commit-tree: add and document --no-gpg-sign + - Add the commit.gpgsign option to sign all commits + + Introduce commit.gpgsign configuration variable to force every + commit to be GPG signed. The variable cannot be overriden from the + command line of some of the commands that create commits except for + "git commit" and "git commit-tree", but I am not convinced that it + is a good idea to sprinkle support for --no-gpg-sign everywhere. + + Will merge to 'next'. + + +* cc/replace-object-info (2013-12-12) 10 commits + (merged to 'next' on 2013-12-17 at aeb9e18) + + Documentation/git-replace: describe --format option + + builtin/replace: unset read_replace_refs + + t6050: add tests for listing with --format + + builtin/replace: teach listing using short, medium or full formats + + sha1_file: perform object replacement in sha1_object_info_extended() + + t6050: show that git cat-file --batch fails with replace objects + + sha1_object_info_extended(): add an "unsigned flags" parameter + + sha1_file.c: add lookup_replace_object_extended() to pass flags + + replace_object: don't check read_replace_refs twice + + rename READ_SHA1_FILE_REPLACE flag to LOOKUP_REPLACE_OBJECT + + read_sha1_file() that is the workhorse to read the contents given + an object name honoured object replacements, but there is no + corresponding mechanism to sha1_object_info() that is used to + obtain the metainfo (e.g. type & size) about the object, leading + callers to weird inconsistencies. + + Has this been reviewed sufficiently? + + Will merge to 'next'. + + +* fc/completion (2013-12-09) 1 commit + - completion: fix completion of certain aliases + + SZEDER Gábor noticed that this breaks "git -c var=val alias" and + also suggested a better description of the change. + + Will hold. + + +* fc/remote-helper-fixes (2013-12-09) 4 commits + (merged to 'next' on 2013-12-17 at aa4dc07) + + remote-hg: add tests for special filenames + + remote-hg: fix 'shared path' path + + remote-helpers: add extra safety checks + + remote-hg: avoid buggy strftime() + + Expecting follow-up test additions. + + +* jk/cat-file-regression-fix (2013-12-12) 2 commits + (merged to 'next' on 2013-12-13 at 3713e01) + + cat-file: handle --batch format with missing type/size + + cat-file: pass expand_data to print_object_or_die + + "git cat-file --batch=", an admittedly useless command, did not + behave very well. + + Will merge to 'master'. + + +* jk/pull-rebase-using-fork-point (2013-12-10) 2 commits + (merged to 'next' on 2013-12-13 at 1862c12) + + rebase: use reflog to find common base with upstream + + pull: use merge-base --fork-point when appropriate + + Will merge to 'master'. + + +* jk/rev-parse-double-dashes (2013-12-09) 2 commits + (merged to 'next' on 2013-12-13 at d26bac7) + + rev-parse: be more careful with munging arguments + + rev-parse: correctly diagnose revision errors before "--" + + "git rev-parse -- " did not implement the usual + disambiguation rules the commands in the "git log" family used in + the same way. + + Will merge to 'master'. + + +* nd/shallow-clone (2013-12-10) 28 commits + - git-clone.txt: remove shallow clone limitations + - prune: clean .git/shallow after pruning objects + - clone: use git protocol for cloning shallow repo locally + - send-pack: support pushing from a shallow clone via http + - receive-pack: support pushing to a shallow clone via http + - smart-http: support shallow fetch/clone + - remote-curl: pass ref SHA-1 to fetch-pack as well + - send-pack: support pushing to a shallow clone + - receive-pack: allow pushes that update .git/shallow + - connected.c: add new variant that runs with --shallow-file + - add GIT_SHALLOW_FILE to propagate --shallow-file to subprocesses + - receive/send-pack: support pushing from a shallow clone + - receive-pack: reorder some code in unpack() + - fetch: add --update-shallow to accept refs that update .git/shallow + - upload-pack: make sure deepening preserves shallow roots + - fetch: support fetching from a shallow repository + - clone: support remote shallow repository + - fetch-pack.h: one statement per bitfield declaration + - fetch-pack.c: move shallow update code out of fetch_pack() + - shallow.c: steps 6 and 7 to select new commits for .git/shallow + - shallow.c: the 8 steps to select new commits for .git/shallow + - shallow.c: extend setup_*_shallow() to accept extra shallow commits + - connect.c: teach get_remote_heads to parse "shallow" lines + - make the sender advertise shallow commits to the receiver + - clone: prevent --reference to a shallow repository + - send-pack: forbid pushing from a shallow repository + - remote.h: replace struct extra_have_objects with struct sha1_array + - transport.h: remove send_pack prototype, already defined in send-pack.h + + Fetching from a shallow-cloned repository used to be forbidden, + primarily because the codepaths involved were not carefully vetted + and we did not bother supporting such usage. This attempts to allow + object transfer out of a shallow-cloned repository in a controlled + way (i.e. the receiver become a shallow repository with truncated + history). + + Will merge to 'next'. + + +* tg/diff-no-index-refactor (2013-12-16) 4 commits + (merged to 'next' on 2013-12-17 at 009d8d8) + + diff: avoid some nesting + + diff: add test for --no-index executed outside repo + (merged to 'next' on 2013-12-13 at 523f7c4) + + diff: don't read index when --no-index is given + + diff: move no-index detection to builtin/diff.c + + "git diff ../else/where/A ../else/where/B" when ../else/where is + clearly outside the repository, and "git diff --no-index A B", do + not have to look at the index at all, but we used to read the index + unconditionally. + + Will merge to 'master'. + + * fc/transport-helper-fixes (2013-12-09) 6 commits - remote-bzr: support the new 'force' option - test-hg.sh: tests are now expected to pass @@ -460,7 +509,7 @@ of the repositories listed at ref mapping and ref deletion in a way similar to the natively supported transports. - Will merge to 'next'. + Will hold. Reported to break t5541. * jn/git-gui-chmod+x (2013-11-25) 1 commit @@ -477,7 +526,9 @@ of the repositories listed at tree. -* jk/name-pack-after-byte-representation (2013-12-05) 2 commits +* jk/name-pack-after-byte-representation (2013-12-16) 3 commits + (merged to 'next' on 2013-12-17 at 0bc385c) + + pack-objects doc: treat output filename as opaque (merged to 'next' on 2013-12-09 at 247b2d0) + pack-objects: name pack files after trailer hash + sha1write: make buffer const-correct @@ -499,19 +550,15 @@ of the repositories listed at + Support pathspec magic :(exclude) and its short form :! + glossary-content.txt: rephrase magic signature part - Introduce "negative pathspec" magic, to allow "git log . ':!dir'" to + Introduce "negative pathspec" magic, to allow "git log -- . ':!dir'" to tell us "I am interested in everything but 'dir' directory". - -* nd/transport-positive-depth-only (2013-12-06) 1 commit - (merged to 'next' on 2013-12-12 at f953cb8) - + clone,fetch: catch non positive --depth option value - - "git fetch --depth=0" was a no-op, and was silently - ignored. Diagnose it as an error. + Will cook in 'next'. -* zk/difftool-counts (2013-12-06) 1 commit +* zk/difftool-counts (2013-12-16) 2 commits + (merged to 'next' on 2013-12-16 at 0e0d235) + + diff.c: fix some recent whitespace style violations (merged to 'next' on 2013-12-12 at ba35694) + difftool: display the number of files in the diff queue in the prompt @@ -519,36 +566,15 @@ of the repositories listed at when "git difftool" prompts to launch an external diff tool, which would give users some sense of progress. - -* jl/commit-v-strip-marker (2013-12-05) 1 commit - (merged to 'next' on 2013-12-09 at 2b85e9e) - + commit -v: strip diffs and submodule shortlogs from the commit message - - "git commit -v" appends the patch to the log message before - editing, and then removed the patch when the editor returned - control. However, the patch was not stripped correctly when the - first modified path was a submodule. - - -* cc/starts-n-ends-with (2013-12-05) 4 commits - (merged to 'next' on 2013-12-12 at 76ee567) - + replace {pre,suf}fixcmp() with {starts,ends}_with() - + strbuf: introduce starts_with() and ends_with() - + builtin/remote: remove postfixcmp() and use suffixcmp() instead - + environment: normalize use of prefixcmp() by removing " != 0" - (this branch is used by cc/starts-n-ends-with-endgame.) - - Remove a few duplicate implementations of prefix/suffix comparison - functions, and rename them to starts_with and ends_with. + Will merge to 'master'. * cc/starts-n-ends-with-endgame (2013-12-05) 1 commit - strbuf: remove prefixcmp() and suffixcmp() - (this branch uses cc/starts-n-ends-with.) - Endgame for the above topic, that needs to be evil-merged with - other topics that introduce new uses of prefix/suffix-cmp - functions. + Endgame for the cc/starts-n-ends-with topic; this needs to be + evil-merged with other topics that introduce new uses of + prefix/suffix-cmp functions. * jc/push-refmap (2013-12-04) 3 commits @@ -563,72 +589,15 @@ of the repositories listed at more symmetric to "git fetch" and more usable for the triangular workflow. - -* jk/t5000-gzip-simplify (2013-12-04) 1 commit - (merged to 'next' on 2013-12-09 at e9010f1) - + t5000: simplify gzip prerequisite checks - - Test fix. + Will merge to 'master'. -* js/gnome-keyring (2013-12-04) 1 commit - - contrib/git-credential-gnome-keyring.c: small stylistic cleanups +* js/gnome-keyring (2013-12-16) 1 commit + (merged to 'next' on 2013-12-17 at 422fd61) + + contrib/git-credential-gnome-keyring.c: small stylistic cleanups Style fix. - -* kn/gitweb-extra-branch-refs (2013-12-12) 4 commits - (merged to 'next' on 2013-12-12 at ae75b02) - + gitweb: Denote non-heads, non-remotes branches - + gitweb: Add a feature for adding more branch refs - + gitweb: Return 1 on validation success instead of passed input - + gitweb: Move check-ref-format code into separate function - - Allow gitweb to be configured to show refs out of refs/heads/ as if - they were branches. - - -* mm/mv-file-to-no-such-dir-with-slash (2013-12-04) 1 commit - (merged to 'next' on 2013-12-09 at f33bc0b) - + mv: let 'git mv file no-such-dir/' error out - - -* nd/gettext-vsnprintf (2013-12-04) 1 commit - (merged to 'next' on 2013-12-09 at e99106e) - + gettext.c: detect the vsnprintf bug at runtime - - -* tr/send-email-ssl (2013-12-04) 3 commits - (merged to 'next' on 2013-12-09 at facb859) - + send-email: set SSL options through IO::Socket::SSL::set_client_defaults - + send-email: --smtp-ssl-cert-path takes an argument - + send-email: pass Debug to Net::SMTP::SSL::new - - SSL-related options were not passed correctly to underlying socket - layer in "git send-email". - - -* tb/clone-ssh-with-colon-for-port (2013-12-09) 10 commits - (merged to 'next' on 2013-12-12 at ae4ae39) - + git_connect(): use common return point - + connect.c: refactor url parsing - + git_connect(): refactor the port handling for ssh - + git fetch: support host:/~repo - + t5500: add test cases for diag-url - + git fetch-pack: add --diag-url - + git_connect: factor out discovery of the protocol and its parts - + git_connect: remove artificial limit of a remote command - + t5601: add tests for ssh - + t5601: remove clear_ssh, refactor setup_ssh_wrapper - - Be more careful when parsing remote repository URL given in the - scp-style host:path notation. - - -* kb/doc-exclude-directory-semantics (2013-12-09) 1 commit - (merged to 'next' on 2013-12-09 at e54b2ec) - + gitignore.txt: clarify recursive nature of excluded directories - Will merge to 'master'. @@ -642,7 +611,7 @@ of the repositories listed at topmost patch is a rebase of jc/push-2.0-default-to-simple on top of it. - Will cook in 'next'. + Will cook in 'next' until Git 2.0. * tr/merge-recursive-index-only (2013-10-28) 3 commits @@ -653,30 +622,6 @@ of the repositories listed at Will hold until using script appears. -* kb/fast-hashmap (2013-12-09) 15 commits - - hashmap.h: make sure map entries are tightly packed - (merged to 'next' on 2013-12-06 at f90be3d) - + read-cache.c: fix memory leaks caused by removed cache entries - + builtin/update-index.c: cleanup update_one - + fix 'git update-index --verbose --again' output - + remove old hash.[ch] implementation - + name-hash.c: remove cache entries instead of marking them CE_UNHASHED - + name-hash.c: use new hash map implementation for cache entries - + name-hash.c: remove unreferenced directory entries - + name-hash.c: use new hash map implementation for directories - + diffcore-rename.c: use new hash map implementation - + diffcore-rename.c: simplify finding exact renames - + diffcore-rename.c: move code around to prepare for the next patch - + buitin/describe.c: use new hash map implementation - + add a hashtable implementation that supports O(1) removal - + submodule: don't access the .gitmodules cache entry after removing it - - Improvements to our hash table to get it to meet the needs of the - msysgit fscache project, with some nice performance improvements. - - The tip one does not seem to have reached concensus (yet). - - * jn/add-2.0-u-A-sans-pathspec (2013-04-26) 1 commit (merged to 'next' on 2013-12-06 at ead2ec8) + git add: -u/-A now affects the entire working tree -- 2.11.4.GIT