1 To: git@vger.kernel.org
3 Subject: What's cooking in git.git (Jul 2013, #07; Sun, 21)
4 X-master-at: 805c5a578995db7594ad0751a683bc6422655c29
5 X-next-at: e2c9e63a26e9480ed73a4f2615121c69962087b4
7 What's cooking in git.git (Jul 2013, #07; Sun, 21)
8 --------------------------------------------------
10 Here are the topics that have been cooking. Commits prefixed with
11 '-' are only in 'pu' (proposed updates) while commits prefixed with
14 Quite a many documentation clean-up patches that are already in
15 'master' have been applied to 'maint'. Hopefully 1.8.3.4 will be
16 the last of the 1.8.3.x maintenance series.
18 You can find the changes described here in the integration branches
19 of the repositories listed at
21 http://git-blame.blogspot.com/p/git-public-repositories.html
23 --------------------------------------------------
26 * mm/color-auto-default (2013-07-19) 1 commit
27 (merged to 'next' on 2013-07-19 at 880d984)
28 + git add -e: Explicitly specify that patch should have no color
30 A finishing touch to fix breakage to "add -e" caused by defaulting
33 Will merge to 'master'.
36 * jc/simple-add-must-be-a-no-op (2013-07-19) 1 commit
37 (merged to 'next' on 2013-07-19 at a1543ee)
38 + t2202: make sure "git add" (no args) stays a no-op
40 This detected a mismerge of one of "add-2.0" topics to the 'jch'
43 Will merge to 'master'.
46 * jm/doc-ref-prune (2013-07-18) 2 commits
47 - Documentation: fix git-prune example usage
48 - Documentation: remove --prune from pack-refs examples
50 Will merge to 'next' and then 'master'.
53 * rj/sparse (2013-07-21) 1 commit
54 - Revert "compat/unsetenv.c: Fix a sparse warning"
56 Will merge to 'next' and then 'master'.
59 * sb/traverse-trees-bitmask-variable-name (2013-07-19) 1 commit
60 - traverse_trees(): clarify return value of the callback
62 Will merge to 'next' and then 'master'.
64 --------------------------------------------------
67 * jk/fast-import-empty-ls (2013-06-23) 4 commits
68 - fast-import: allow moving the root tree
69 - fast-import: allow ls or filecopy of the root tree
70 - fast-import: set valid mode on root tree in "ls"
71 - t9300: document fast-import empty path issues
76 * tf/gitweb-ss-tweak (2013-07-15) 4 commits
77 - gitweb: make search help link less ugly
78 - gitweb: omit the repository owner when it is unset
79 - gitweb: vertically centre contents of page footer
80 - gitweb: ensure OPML text fits inside its box
85 * rj/read-default-config-in-show-ref-pack-refs (2013-06-17) 3 commits
86 - ### DONTMERGE: needs better explanation on what config they need
87 - pack-refs.c: Add missing call to git_config()
88 - show-ref.c: Add missing call to git_config()
90 The changes themselves are probably good, but it is unclear what
91 basic setting needs to be read for which exact operation.
93 Waiting for clarification.
97 * jh/shorten-refname (2013-05-07) 4 commits
98 - t1514: refname shortening is done after dereferencing symbolic refs
99 - shorten_unambiguous_ref(): Fix shortening refs/remotes/origin/HEAD to origin
100 - t1514: Demonstrate failure to correctly shorten "refs/remotes/origin/HEAD"
101 - t1514: Add tests of shortening refnames in strict/loose mode
103 When remotes/origin/HEAD is not a symbolic ref, "rev-parse
104 --abbrev-ref remotes/origin/HEAD" ought to show "origin", not
105 "origin/HEAD", which is fixed with this series (if it is a symbolic
106 ref that points at remotes/origin/something, then it should show
107 "origin/something" and it already does).
109 Expecting a reroll, as an early part of a larger series.
113 * jl/submodule-mv (2013-04-23) 5 commits
114 . submodule.c: duplicate real_path's return value
115 . rm: delete .gitmodules entry of submodules removed from the work tree
116 . Teach mv to update the path entry in .gitmodules for moved submodules
117 . Teach mv to move submodules using a gitfile
118 . Teach mv to move submodules together with their work trees
120 "git mv A B" when moving a submodule A does "the right thing",
121 inclusing relocating its working tree and adjusting the paths in
122 the .gitmodules file.
124 Ejected from 'pu', as it conflicts with nd/magic-pathspec.
127 * jk/list-objects-sans-blobs (2013-06-06) 4 commits
128 . archive: ignore blob objects when checking reachability
129 . list-objects: optimize "revs->blob_objects = 0" case
130 . upload-archive: restrict remote objects with reachability check
131 . clear parsed flag when we free tree buffers
133 Attempt to allow "archive --remote=$there $arbitrary_sha1" while
134 keeping the reachability safety.
136 Seems to break some tests in a trivial and obvious way.
139 * mg/more-textconv (2013-05-10) 7 commits
140 - grep: honor --textconv for the case rev:path
141 - grep: allow to use textconv filters
142 - t7008: demonstrate behavior of grep with textconv
143 - cat-file: do not die on --textconv without textconv filters
144 - show: honor --textconv for blobs
145 - diff_opt: track whether flags have been set explicitly
146 - t4030: demonstrate behavior of show with textconv
148 Make "git grep" and "git show" pay attention to --textconv when
149 dealing with blob objects.
151 I thought this was pretty well designed and executed, but it seems
152 there are some doubts on the list; kicked back to 'pu'.
155 * jc/format-patch (2013-04-22) 2 commits
156 - format-patch: --inline-single
157 - format-patch: rename "no_inline" field
159 A new option to send a single patch to the standard output to be
160 appended at the bottom of a message. I personally have no need for
161 this, but it was easy enough to cobble together. Tests, docs and
162 stripping out more MIMEy stuff are left as exercises to interested
165 Not ready for inclusion.
167 Will discard unless we hear from anybody who is interested in
168 tying its loose ends.
171 * jk/gitweb-utf8 (2013-04-08) 4 commits
172 - gitweb: Fix broken blob action parameters on blob/commitdiff pages
173 - gitweb: Don't append ';js=(0|1)' to external links
174 - gitweb: Make feed title valid utf8
175 - gitweb: Fix utf8 encoding for blob_plain, blobdiff_plain, commitdiff_plain, and patch
177 Various fixes to gitweb.
179 Drew Northup volunteered to take a look into this.
183 * jc/show-branch (2013-06-07) 5 commits
184 - show-branch: use commit slab to represent bitflags of arbitrary width
185 - show-branch.c: remove "all_mask"
186 - show-branch.c: abstract out "flags" operation
187 - show-branch.c: lift all_mask/all_revs to a global static
188 - show-branch.c: update comment style
190 Waiting for the final step to lift the hard-limit before sending it out.
192 --------------------------------------------------
195 * mh/multimail (2013-07-15) 2 commits
196 - post-receive-email: deprecate script in favor of git-multimail
197 - git-multimail: an improved replacement for post-receive-email
199 An enhanced "post-receive" hook to send e-mail messages.
201 I tend to agree that the wording of the tip one is a bit too
202 strong. An old script does not necessarily have to be avoided by
203 its existing users only because it has not got updates for a long
207 * db/show-ref-head (2013-07-17) 1 commit
208 (merged to 'next' on 2013-07-18 at 73797d0)
209 + show-ref: make --head always show the HEAD ref
211 The "--head" option to "git show-ref" was only to add "HEAD" to the
212 list of candidate refs to be filtered by the usual rules
213 (e.g. "--heads" that only show refs under refs/heads). Change the
214 meaning of the option to always show "HEAD" regardless of what
215 filtering will be applied to any other ref (this is a backward
216 incompatible change, so I may need to add an entry to the Release
219 Will merge to 'master'.
222 * dw/request-pull-diag (2013-07-17) 1 commit
223 (merged to 'next' on 2013-07-18 at d4406de)
224 + request-pull: improve error message for invalid revision args
226 Will merge to 'master'.
229 * es/blame-L-breakage (2013-07-17) 6 commits
230 (merged to 'next' on 2013-07-18 at cfd871a)
231 + blame-options.txt: explain that -L <start> and <end> are optional
232 + blame-options.txt: place each -L option variation on its own line
233 + t8001/t8002 (blame): add blame -L :funcname tests
234 + t8001/t8002 (blame): add blame -L tests
235 + t8001/t8002 (blame): modernize style
236 + line-range: fix "blame -L X,-N" regression
238 The refactoring made for parsing "-L" option recently to support
239 "git log -L" seems to have broken "git blame -L X,-5" to show 5
242 Will merge to 'master'.
245 * jc/diff-filter-negation (2013-07-19) 6 commits
246 - diff: deprecate -q option to diff-files
247 - diff: allow lowercase letter to specify what change class to exclude
248 - diff: reject unknown change class given to --diff-filter
249 - diff: preparse --diff-filter string argument
250 - diff: factor out match_filter()
251 - diff: pass the whole diff_options to diffcore_apply_filter()
252 (this branch is used by jc/hold-diff-remove-q-synonym-for-no-deletion.)
254 Teach "git diff --diff-filter" to express "I do not want to see
255 these classes of changes" more directly by listing only the
256 unwanted ones in lowercase (e.g. "--diff-filter=d" will show
257 everything but deletion) and deprecate "diff-files -q" which did
258 the same thing as "--diff-filter=d".
260 Will merge to 'next'.
263 * mh/packed-refs-do-one-ref-recursion (2013-07-17) 1 commit
264 - do_one_ref(): save and restore value of current_ref
266 Needs a bit better description to be placed in the Release Notes.
269 * ml/avoid-using-grep-on-crlf-files (2013-07-18) 1 commit
270 - test-lib.sh - define and use GREP_STRIPS_CR
272 On systems that understand a CRLF as a line ending, tests in this
273 script that worked on files with CRLF line endings using "grep" to
274 extract matching lines may lose the CR at the end of lines that
275 match, causing the actual output not to match the expected output.
277 Will merge to 'next'.
280 * ml/cygwin-updates (2013-07-21) 4 commits
281 - cygwin: stop forcing core.filemode=false
282 - Cygwin 1.7 supports mmap
283 - Cygwin 1.7 has thread-safe pread
284 - Cygwin 1.7 needs compat/regex
286 The tip one does _not_ revert c869753e (Force core.filemode to
287 false on Cygwin., 2006-12-30) on purpose, so that people can
288 still retain the old behaviour if they wanted to.
290 Will merge to 'next'.
293 * mm/diff-no-patch-synonym-to-s (2013-07-17) 6 commits
294 (merged to 'next' on 2013-07-18 at 3b893d6)
295 + Documentation/git-log.txt: capitalize section names
296 + Documentation: move description of -s, --no-patch to diff-options.txt
297 + Documentation/git-show.txt: include common diff options, like git-log.txt
298 + diff: allow --patch & cie to override -s/--no-patch
299 + diff: allow --no-patch as synonym for -s
300 + t4000-diff-format.sh: modernize style
302 "git show -s" was less discoverable than it should be.
304 Will merge to 'master'.
307 * nd/magic-pathspec (2013-07-17) 47 commits
308 - t6131 - skip tests if on case-insensitive file system
309 - parse_pathspec: accept :(icase)path syntax
310 - pathspec: support :(glob) syntax
311 - pathspec: make --literal-pathspecs disable pathspec magic
312 - pathspec: support :(literal) syntax for noglob pathspec
313 - kill limit_pathspec_to_literal() as it's only used by parse_pathspec()
314 - parse_pathspec: preserve prefix length via PATHSPEC_PREFIX_ORIGIN
315 - parse_pathspec: make sure the prefix part is wildcard-free
316 - rename field "raw" to "_raw" in struct pathspec
317 - tree-diff: remove the use of pathspec's raw[] in follow-rename codepath
318 - remove match_pathspec() in favor of match_pathspec_depth()
319 - remove init_pathspec() in favor of parse_pathspec()
320 - remove diff_tree_{setup,release}_paths
321 - convert common_prefix() to use struct pathspec
322 - convert add_files_to_cache to take struct pathspec
323 - convert {read,fill}_directory to take struct pathspec
324 - convert refresh_index to take struct pathspec
325 - convert report_path_error to take struct pathspec
326 - checkout: convert read_tree_some to take struct pathspec
327 - convert unmerge_cache to take struct pathspec
328 - convert run_add_interactive to use struct pathspec
329 - convert read_cache_preload() to take struct pathspec
330 - line-log: convert to use parse_pathspec
331 - reset: convert to use parse_pathspec
332 - add: convert to use parse_pathspec
333 - check-ignore: convert to use parse_pathspec
334 - archive: convert to use parse_pathspec
335 - ls-files: convert to use parse_pathspec
336 - rm: convert to use parse_pathspec
337 - checkout: convert to use parse_pathspec
338 - rerere: convert to use parse_pathspec
339 - status: convert to use parse_pathspec
340 - commit: convert to use parse_pathspec
341 - clean: convert to use parse_pathspec
342 - guard against new pathspec magic in pathspec matching code
343 - parse_pathspec: support prefixing original patterns
344 - parse_pathspec: support stripping/checking submodule paths
345 - parse_pathspec: support stripping submodule trailing slashes
346 - parse_pathspec: add special flag for max_depth feature
347 - convert some get_pathspec() calls to parse_pathspec()
348 - parse_pathspec: add PATHSPEC_PREFER_{CWD,FULL} flags
349 - parse_pathspec: save original pathspec for reporting
350 - add parse_pathspec() that converts cmdline args to struct pathspec
351 - pathspec: add copy_pathspec
352 - pathspec: i18n-ize error strings in pathspec parsing code
353 - move struct pathspec and related functions to pathspec.[ch]
354 - clean: remove unused variable "seen"
356 Use "struct pathspec" interface in more places, instead of array of
357 characters, the latter of which cannot express magic pathspecs
358 (e.g. ":(icase)makefile" that matches both Makefile and makefile).
360 Will merge to 'next'.
363 * rh/template-updates (2013-07-15) 3 commits
364 - templates: spell ASCII in uppercase in pre-commit hook
365 - templates: Reformat pre-commit hook's message
366 - templates: Use heredoc in pre-commit hook
368 This is an earlier part of a 6 patch series, with log message
371 Will merge to 'next'.
374 * sb/misc-fixes (2013-07-15) 3 commits
375 (merged to 'next' on 2013-07-21 at 880b08c)
376 + diff.c: Do not initialize a variable, which gets reassigned anyway.
377 + commit: Fix a memory leak in determine_author_info
378 + daemon.c:handle: Remove unneeded check for null pointer.
380 Assorted code cleanups and a minor fix.
382 Will merge to 'master'.
385 * sb/parse-object-buffer-eaten (2013-07-17) 1 commit
386 (merged to 'next' on 2013-07-18 at 364689c)
387 + parse_object_buffer: correct freeing the buffer
389 Will merge to 'master'.
392 * tr/do-not-call-submodules-subprojects (2013-07-18) 2 commits
393 (merged to 'next' on 2013-07-18 at 6386fd5)
394 + show-branch: fix description of --date-order
395 + apply, entry: speak of submodules instead of subprojects
397 Will merge to 'master'.
400 * tr/protect-low-3-fds (2013-07-17) 2 commits
401 (merged to 'next' on 2013-07-18 at 504d972)
402 + git: ensure 0/1/2 are open in main()
403 + daemon/shell: refactor redirection of 0/1/2 from /dev/null
405 When "git" is spawned in such a way that any of the low 3 file
406 descriptors is closed, our first open() may yield file descriptor 2,
407 and writing error message to it would screw things up in a big way.
409 Will merge to 'master'.
412 * rr/send-email-ssl-verify (2013-07-18) 1 commit
413 (merged to 'next' on 2013-07-21 at 62099ff)
414 + send-email: be explicit with SSL certificate verification
416 Newer Net::SMTP::SSL module does not want the user programs to use
417 the default behaviour to let server certificate go without
418 verification, so by default enable the verification with a
419 mechanism to turn it off if needed.
421 Will merge to 'master'.
424 * es/check-mailmap (2013-07-13) 2 commits
425 (merged to 'next' on 2013-07-21 at 23c5363)
426 + t4203: test check-mailmap command invocation
427 + builtin: add git-check-mailmap command
428 (this branch is used by es/contacts.)
430 A new command to allow scripts to query the mailmap information.
432 Will merge to 'master'.
435 * jc/check-x-z (2013-07-11) 4 commits
436 (merged to 'next' on 2013-07-15 at 62751bc)
437 + check-attr -z: a single -z should apply to both input and output
438 + check-ignore -z: a single -z should apply to both input and output
439 + check-attr: the name of the character is NUL, not NULL
440 + check-ignore: the name of the character is NUL, not NULL
442 "git check-ignore -z" applied the NUL termination to both its input
443 (with --stdin) and its output, but "git check-attr -z" ignored the
444 option on the output side.
446 This is potentially a backward incompatible fix. I am tempted to
447 merge this to and keep it in 'next' for a while to see if anybody
448 screams before deciding if we want to do anything to help existing
449 users (there may be none).
451 Waiting for failure reports ;-)
454 * jk/cat-file-batch-optim (2013-07-18) 9 commits
455 - Fix some sparse warnings
456 - sha1_object_info_extended: pass object_info to helpers
457 - sha1_object_info_extended: make type calculation optional
458 - packed_object_info: make type lookup optional
459 - packed_object_info: hoist delta type resolution to helper
460 - sha1_loose_object_info: make type lookup optional
461 - sha1_object_info_extended: rename "status" to "type"
462 - cat-file: disable object/refname ambiguity check for batch mode
463 - Merge branch 'nd/warn-ambiguous-object-name' into jk/cat-file-batch-optim
465 If somebody wants to only know on-disk footprint of an object
466 without having to know its type or payload size, we can bypass a
467 lot of code to cheaply learn it.
469 Will merge to 'next'.
472 * jk/t0008-sigpipe-fix (2013-07-12) 1 commit
473 (merged to 'next' on 2013-07-15 at cead4b2)
474 + t0008: avoid SIGPIPE race condition on fifo
476 Fix for recent test breakage on 'master'.
478 Will merge to 'master'.
481 * mk/upload-pack-off-by-one-dead-code-removal (2013-07-15) 1 commit
482 (merged to 'next' on 2013-07-15 at a8f55a2)
483 + upload-pack: remove a piece of dead code
485 Will merge to 'master'.
488 * tr/fd-gotcha-fixes (2013-07-12) 2 commits
489 (merged to 'next' on 2013-07-18 at 30f4fdf)
490 + run-command: dup_devnull(): guard against syscalls failing
491 + git_mkstemps: correctly test return value of open()
493 Two places we did not check return value (expected to be a file
494 descriptor) correctly.
496 Will merge to 'master'.
499 * jc/mailmap-case-insensitivity (2013-07-15) 9 commits
500 (merged to 'next' on 2013-07-18 at 83341ac)
501 + mailmap: style fixes
502 + mailmap: debug: avoid passing NULL to fprintf() '%s' conversion specification
503 + mailmap: debug: eliminate -Wformat field precision type warning
504 + mailmap: debug: fix malformed fprintf() format conversion specification
505 + mailmap: debug: fix out-of-order fprintf() arguments
506 + mailmap: do not downcase mailmap entries
507 + t4203: demonstrate loss of uppercase characters in canonical email
508 + mailmap: do not lose single-letter names
509 + t4203: demonstrate loss of single-character name in mailmap entry
511 The mailmap mechanism unnecessarily downcased the e-mail addresses
512 in the output, and also ignored the human name when it is a single
515 This now has become Eric Sunshine's series, even though it still is
518 Will merge to 'master'.
521 * ms/fetch-prune-configuration (2013-07-18) 1 commit
522 (merged to 'next' on 2013-07-21 at 7ffb690)
523 + fetch: make --prune configurable
525 Allow fetch.prune and remote.*.prune configuration variables to be set,
526 and "git fetch" to behave as if "--prune" is given.
528 Will merge to 'master'.
531 * jk/gcc-function-attributes (2013-07-19) 4 commits
532 (merged to 'next' on 2013-07-19 at 5f6ad91)
533 + Add the LAST_ARG_MUST_BE_NULL macro
534 (merged to 'next' on 2013-07-12 at 5a7081f)
535 + wt-status: use "format" function attribute for status_printf
536 + use "sentinel" function attribute for variadic lists
537 + add missing "format" function attributes
539 Use the function attributes extension to catch mistakes in use of
540 our own variadic functions that use NULL sentinel at the end
541 (i.e. like execl(3)) and format strings (i.e. like printf(3)).
543 Will merge to 'master'.
546 * km/http-curl-config-per-url (2013-07-21) 5 commits
547 . config: allow http.<url>.* any user matching
548 . tests: add new test for the url_normalize function
549 . config: improve support for http.<url>.* settings
550 . config: add support for http.<url>.* settings
551 . http.c: fix parsing of http.sslCertPasswordProtected variable
553 Allows custom curl configuration per URL when talking over http.
554 Tentatively ejected as I did not seem to have received some binary
558 * hv/config-from-blob (2013-07-12) 5 commits
559 (merged to 'next' on 2013-07-15 at 9ab7f3f)
560 + do not die when error in config parsing of buf occurs
561 + teach config --blob option to parse config from database
562 + config: make parsing stack struct independent from actual data source
563 + config: drop cf validity check in get_next_char()
564 + config: factor out config file stack management
566 Allow configuration data to be read from in-tree blob objects,
567 which would help working in a bare repository and submodule
570 Will merge to 'master'.
573 * jc/name-rev-exact-ref (2013-07-18) 5 commits
574 (merged to 'next' on 2013-07-18 at c8bc00c)
575 + describe: fix --contains when a tag is given as input
576 + name-rev: differentiate between tags and commits they point at
577 (merged to 'next' on 2013-07-11 at fd5b30c)
578 + describe: use argv-array
579 + name-rev: allow converting the exact object name at the tip of a ref
580 + name-ref: factor out name shortening logic from name_ref()
582 Corrects the longstanding sloppiness in the implementation of
583 name-rev that conflated "we take commit-ish" and "differences
584 between tags and commits do not matter".
586 Will merge to 'master'.
589 * km/svn-1.8-serf-only (2013-07-18) 3 commits
590 (merged to 'next' on 2013-07-19 at ab8d034)
591 + Git.pm: revert _temp_cache use of temp_is_locked
592 (merged to 'next' on 2013-07-12 at 70e0b95)
593 + git-svn: allow git-svn fetching to work using serf
594 + Git.pm: add new temp_is_locked function
596 Subversion 1.8.0 that was recently released breaks older subversion
597 clients coming over http/https in various ways.
599 Will cook for a while.
602 * tr/merge-recursive-index-only (2013-07-07) 3 commits
603 - merge-recursive: -Xindex-only to leave worktree unchanged
604 - merge-recursive: untangle double meaning of o->call_depth
605 - merge-recursive: remove dead conditional in update_stages()
607 What's the status of this one?
609 I am not particularly fond of the second patch that conceptually
610 allows updating working tree during a virtual merge (i.e. addition
611 of o->no_worktree is fine, but there needs a way to make sure it is
612 never set to false when o->depth is not zero).
615 * jc/push-cas (2013-07-17) 6 commits
616 - t5533: test "push --lockref"
617 - push --lockref: tie it all together
618 - push --lockref: implement logic to populate old_sha1_expect[]
619 - remote.c: add command line option parser for "--lockref"
620 - builtin/push.c: use OPT_BOOL, not OPT_BOOLEAN
621 - cache.h: move remote/connect API out of it
623 Allow a safer "rewind of the remote tip" push than blind "--force",
624 by requiring that the overwritten remote ref to be unchanged since
625 the new history to replace it was prepared.
627 The machinery is more or less ready. The "--force" option is again
628 the big red button to override any safety, thanks to J6t's sanity
629 (the original round allowed --lockref to defeat --force).
631 I have strong doubts on the merit of the logic to choose the
632 default for "--lockref" implemented here. It is suitable only for
633 the simplest workflows, and it may hurt users more than it helps
636 Also the option may be called something with "--force" prefix, as
637 it is a weaker and more controlled form of "--force" that is used
638 to defeat the usual "must fast-forward" safety.
641 * nd/const-struct-cache-entry (2013-07-09) 1 commit
642 (merged to 'next' on 2013-07-15 at 9ce0122)
643 + Convert "struct cache_entry *" to "const ..." wherever possible
645 Will merge to 'master'.
648 * es/contacts (2013-07-21) 5 commits
649 - contrib: contacts: add documentation
650 - contrib: contacts: add mailmap support
651 - contrib: contacts: interpret committish akin to format-patch
652 - contrib: contacts: add ability to parse from committish
653 - contrib: add git-contacts helper
654 (this branch uses es/check-mailmap.)
656 A helper to read from a set of format-patch output files or a range
657 of commits and find those who may have insights to the code that
658 the changes touch by running a series of "git blame" commands.
660 Still needs to add mailmap support and other niceties but the
661 basics already look sound, and the enhancements can be done
662 in-tree. Assuming that "git contact" is something we may want to
663 have as a member of the official set of commands someday, that is.
665 Will merge to 'next'.
668 * jc/pull-training-wheel (2013-07-19) 1 commit
669 - pull: require choice between rebase/merge on non-fast-forward pull
671 Make "git pull" (without arguments that say what branch to
672 integrate from where) refuse with "it does not fast forward; choose
673 between 'pull --merge' and 'pull --rebase'".
677 http://thread.gmane.org/gmane.comp.version-control.git/225146/focus=225326
678 http://thread.gmane.org/gmane.comp.version-control.git/225146/focus=229221
682 Will merge to 'next'.
685 * rj/cygwin-clarify-use-of-cheating-lstat (2013-07-18) 1 commit
686 - cygwin: Remove the Win32 l/stat() implementation
688 Cygwin port added a "not quite correct but a lot faster and good
689 enough for many lstat() calls that are only used to see if the
690 working tree entity matches the index entry" lstat() emulation some
691 time ago, and it started biting us in places. This removes it and
692 uses the standard lstat() that comes with Cygwin.
694 I am personally in favor of this simpler solution. Comments?
697 * jc/reflog-doc (2013-06-19) 1 commit
698 - setup_reflog_action: document the rules for using GIT_REFLOG_ACTION
700 Document rules to use GIT_REFLOG_ACTION variable in the scripted
701 Porcelain. git-rebase--interactive locally violates this, but it
702 is a leaf user that does not call out to or dot-sources other
703 scripts, so fixing it is not all that urgent.
706 * mh/ref-races-optim-invalidate-cached (2013-06-20) 1 commit
707 - refs: do not invalidate the packed-refs cache unnecessarily
709 This requires the platform lstat() to be correct to avoid false
712 Will merge to 'next'.
715 * jx/clean-interactive (2013-06-26) 16 commits
716 (merged to 'next' on 2013-07-12 at 61dd42d)
717 + test: run testcases with POSIX absolute paths on Windows
718 + test: add t7301 for git-clean--interactive
719 + git-clean: add documentation for interactive git-clean
720 + git-clean: add ask each interactive action
721 + git-clean: add select by numbers interactive action
722 + git-clean: add filter by pattern interactive action
723 + git-clean: use a git-add-interactive compatible UI
724 + git-clean: add colors to interactive git-clean
725 + git-clean: show items of del_list in columns
726 + git-clean: add support for -i/--interactive
727 (merged to 'next' on 2013-06-26 at f7be2d8)
728 + git-clean: refactor git-clean into two phases
729 + write_name{_quoted_relative,}(): remove redundant parameters
730 + quote_path_relative(): remove redundant parameter
731 + quote.c: substitute path_relative with relative_path
732 + path.c: refactor relative_path(), not only strip prefix
733 + test: add test cases for relative_path
735 Add "interactive" mode to "git clean".
737 The early part to refactor relative path related helper functions
740 Will merge to 'master'.
743 * jn/add-2.0-u-A-sans-pathspec (2013-04-26) 1 commit
744 - git add: -u/-A now affects the entire working tree
746 Will cook in 'next' until Git 2.0.
749 * jc/core-checkstat-2.0 (2013-05-06) 1 commit
750 - core.statinfo: remove as promised in Git 2.0
752 Will cook in 'next' until Git 2.0.
755 * jc/push-2.0-default-to-simple (2013-06-18) 1 commit
756 - push: switch default from "matching" to "simple"
758 Will cook in 'next' until Git 2.0.
761 * jc/add-2.0-ignore-removal (2013-04-22) 1 commit
762 - git add <pathspec>... defaults to "-A"
764 Updated endgame for "git add <pathspec>" that defaults to "--all"
765 aka "--no-ignore-removal".
767 Will cook in 'next' until Git 2.0.
770 * jc/hold-diff-remove-q-synonym-for-no-deletion (2013-07-19) 1 commit
771 - diff: remove "diff-files -q" in a version of Git in a distant future
772 (this branch uses jc/diff-filter-negation.)
774 This obviously has to wait until a distant future.