What's cooking (2013/01 #06)

This commit is contained in:
Junio C Hamano
2013-01-14 14:23:10 -08:00
parent b74cb9f9b7
commit 70e0e3ee1b

View File

@@ -1,10 +1,10 @@
To: git@vger.kernel.org
Bcc: lwn@lwn.net
Subject: What's cooking in git.git (Jan 2013, #05; Fri, 11)
X-master-at: a27d83aee906a767ae12dc39cd0aa5b42448bd6c
X-next-at: b8b30b1c3494e2bbefedcefe98fd2bab94927a80
Subject: What's cooking in git.git (Jan 2013, #06; Mon, 14)
X-master-at: eacf0117752780bf418d352a6ad2f033aeda1cce
X-next-at: 6b4d555ffede903f47d5e5fa51348b27b331f791
What's cooking in git.git (Jan 2013, #05; Fri, 11)
What's cooking in git.git (Jan 2013, #06; Mon, 14)
--------------------------------------------------
Here are the topics that have been cooking. Commits prefixed with
@@ -19,267 +19,230 @@ repositories listed at
http://git-blame.blogspot.com/p/git-public-repositories.html
--------------------------------------------------
[New Topics]
* jc/cvsimport-upgrade (2013-01-14) 8 commits
- t9600: adjust for new cvsimport
- t9600: further prepare for sharing
- cvsimport-3: add a sample test
- cvsimport: make tests reusable for cvsimport-3
- cvsimport: start adding cvsps 3.x support
- cvsimport: introduce a version-switch wrapper
- cvsimport: allow setting a custom cvsps (2.x) program name
- Makefile: add description on PERL/PYTHON_PATH
The most important part of this series is the addition of the new
cvsimport by Eric Raymond that works with cvsps 3.x. Given some
distros have inertia to be conservative, Git with cvsimport that
does not work with both 3.x will block adoption of cvsps 3.x by
them, and shipping Git with cvsimport that does not work with cvsps
2.x will block such a version of Git, so we'll do the proven "both
old and new are available, but we aim to deprecate and remove the
old one in due time" strategy that we used successfully in the
past.
* as/pre-push-hook (2013-01-14) 3 commits
- Add sample pre-push hook script
- push: Add support for pre-push hooks
- hooks: Add function to check if a hook exists
Add an extra hook so that "git push" that is run without making
sure what is being pushed is sane can be checked and rejected (as
opposed to the user deciding not pushing).
* dl/am-hg-locale (2013-01-14) 1 commit
- am: invoke perl's strftime in C locale
Datestamp recorded in "Hg" format patch was reformatted incorrectly
to an e-mail looking date using locale dependant strftime, causing
patch application to fail.
* jk/config-parsing-cleanup (2013-01-14) 7 commits
- [DONTMERGE] reroll coming
- submodule: simplify memory handling in config parsing
- submodule: use match_config_key when parsing config
- userdiff: drop parse_driver function
- convert some config callbacks to match_config_key
- archive-tar: use match_config_key when parsing config
- config: add helper function for parsing key names
Expecting a reroll.
* mp/diff-algo-config (2013-01-14) 3 commits
- diff: Introduce --diff-algorithm command line option
- config: Introduce diff.algorithm variable
- git-completion.bash: Autocomplete --minimal and --histogram for git-diff
Add diff.algorithm configuration so that the user does not type
"diff --histogram".
Expecting a reroll.
* ph/rebase-preserve-all-merges (2013-01-14) 1 commit
- rebase --preserve-merges: keep all merge commits including empty ones
An earlier change to add --keep-empty option broke "git rebase
--preserve-merges" and lost merge commits that end up being the
same as its parent.
Will merge to 'next'.
* rs/archive-tar-config-parsing-fix (2013-01-14) 1 commit
- archive-tar: fix sanity check in config parsing
Configuration parsing for tar.* configuration variables were
broken; Peff's config parsing clean-up topic will address the same
breakage, so this may be superseded by that other topic.
* rs/pretty-use-prefixcmp (2013-01-14) 1 commit
- pretty: use prefixcmp instead of memcmp on NUL-terminated strings
Will merge to 'next'.
--------------------------------------------------
[Graduated to "master"]
* as/api-allocation-doc (2013-01-06) 1 commit
(merged to 'next' on 2013-01-08 at c80b544)
+ api-allocation-growing.txt: encourage better variable naming
* ap/status-ignored-in-ignored-directory (2013-01-07) 3 commits
(merged to 'next' on 2013-01-10 at 20f7476)
+ status: always report ignored tracked directories
(merged to 'next' on 2013-01-07 at 2a20b19)
+ git-status: Test --ignored behavior
+ dir.c: Make git-status --ignored more consistent
Output from "git status --ignored" showed an unexpected interaction
with "--untracked".
* as/dir-c-cleanup (2012-12-28) 10 commits
(merged to 'next' on 2013-01-08 at 5aee090)
+ dir.c: rename free_excludes() to clear_exclude_list()
+ dir.c: refactor is_path_excluded()
+ dir.c: refactor is_excluded()
+ dir.c: refactor is_excluded_from_list()
+ dir.c: rename excluded() to is_excluded()
+ dir.c: rename excluded_from_list() to is_excluded_from_list()
+ dir.c: rename path_excluded() to is_path_excluded()
+ dir.c: rename cryptic 'which' variable to more consistent name
+ Improve documentation and comments regarding directory traversal API
+ api-directory-listing.txt: update to match code
(this branch is used by as/check-ignore.)
* fc/remote-testgit-feature-done (2012-10-29) 1 commit
(merged to 'next' on 2013-01-10 at 3132a60)
+ remote-testgit: properly check for errors
Refactor and generally clean up the directory traversal API
implementation.
In the longer term, tightening rules is a good thing to do, and
because nobody who has worked in the remote helper area seems to be
interested in reviewing this, I would assume they do not think
such a retroactive tightening will affect their remote helpers. So
let's advance this topic to see what happens.
* aw/rebase-am-failure-detection (2012-10-11) 1 commit
(merged to 'next' on 2013-01-07 at 9e2ee43)
+ rebase: Handle cases where format-patch fails
* jc/blame-no-follow (2012-09-21) 2 commits
(merged to 'next' on 2013-01-10 at 201c7f4)
+ blame: pay attention to --no-follow
+ diff: accept --no-follow option
Originally merged to 'next' on 2013-01-02
Save output from format-patch command in a temporary file, just in
case it aborts, to give a better failure-case behaviour.
Teaches "--no-follow" option to "git blame" to disable its
whole-file rename detection.
* jc/comment-cygwin-win32api-in-makefile (2013-01-06) 1 commit
(merged to 'next' on 2013-01-08 at dea04e8)
+ Makefile: add comment on CYGWIN_V15_WIN32API
* jc/maint-fmt-merge-msg-no-edit-lose-credit (2012-12-28) 1 commit
(merged to 'next' on 2013-01-07 at 497bf10)
+ merge --no-edit: do not credit people involved in the side branch
Originally merged to 'next' on 2013-01-02
Stop spending cycles to compute information to be placed on
commented lines in "merge --no-edit".
* jk/config-uname (2013-01-03) 1 commit
(merged to 'next' on 2013-01-08 at f986500)
+ Makefile: hoist uname autodetection to config.mak.uname
Move the bits to set fallback default based on the platform from
the main Makefile to a separate file, so that it can be included in
Makefiles in subdirectories.
* jl/interrupt-clone-remove-separate-git-dir (2013-01-05) 1 commit
(merged to 'next' on 2013-01-08 at 568f874)
+ clone: support atomic operation with --separate-git-dir
When "git clone --separate-git-dir" is interrupted, we failed to
remove the real location we created the repository.
* mz/pick-unborn (2012-12-23) 2 commits
(merged to 'next' on 2013-01-07 at c6c062b)
+ learn to pick/revert into unborn branch
+ tests: move test_cmp_rev to test-lib-functions
Originally merged to 'next' on 2013-01-02
Allows "git cherry-pick $commit" when you do not have any history
behind HEAD yet.
* nd/wildmatch (2013-01-01) 18 commits
(merged to 'next' on 2013-01-07 at 2a39f7d)
+ wildmatch: replace variable 'special' with better named ones
+ compat/fnmatch: respect NO_FNMATCH* even on glibc
+ wildmatch: fix "**" special case
+ t3070: Disable some failing fnmatch tests
+ test-wildmatch: avoid Windows path mangling
+ Support "**" wildcard in .gitignore and .gitattributes
+ wildmatch: make /**/ match zero or more directories
+ wildmatch: adjust "**" behavior
+ wildmatch: fix case-insensitive matching
+ wildmatch: remove static variable force_lower_case
+ wildmatch: make wildmatch's return value compatible with fnmatch
+ t3070: disable unreliable fnmatch tests
+ Integrate wildmatch to git
+ wildmatch: follow Git's coding convention
+ wildmatch: remove unnecessary functions
+ Import wildmatch from rsync
+ ctype: support iscntrl, ispunct, isxdigit and isprint
+ ctype: make sane_ctype[] const array
(this branch is used by nd/retire-fnmatch.)
Originally merged to 'next' on 2013-01-01
Allows pathname patterns in .gitignore and .gitattributes files
with double-asterisks "foo/**/bar" to match any number of directory
hierarchies.
* rs/leave-base-name-in-name-field-of-tar (2013-01-05) 1 commit
(merged to 'next' on 2013-01-08 at 98f325e)
+ archive-tar: split long paths more carefully
Improve compatibility with implementations of "tar" that do not
like empty name field in header (with the additional prefix field
holding everything).
* tb/test-shell-lint (2013-01-02) 1 commit
(merged to 'next' on 2013-01-07 at 0bca54a)
+ test: Add check-non-portable-shell.pl
* jc/format-patch-reroll (2013-01-03) 9 commits
(merged to 'next' on 2013-01-07 at 0e007e6)
+ format-patch: give --reroll-count a short synonym -v
+ format-patch: document and test --reroll-count
+ format-patch: add --reroll-count=$N option
+ get_patch_filename(): split into two functions
+ get_patch_filename(): drop "just-numbers" hack
+ get_patch_filename(): simplify function signature
+ builtin/log.c: stop using global patch_suffix
+ builtin/log.c: drop redundant "numbered_files" parameter from make_cover_letter()
+ builtin/log.c: drop unused "numbered" parameter from make_cover_letter()
Originally merged to 'next' on 2013-01-04
Check for common mistakes in the test scripts, based on simple
pattern-matching.
Teach "format-patch" to prefix v4- to its output files for the
fourth iteration of a patch series, to make it easier for the
submitter to keep separate copies for iterations.
* jc/merge-blobs (2012-12-26) 5 commits
(merged to 'next' on 2013-01-08 at 582ca38)
+ merge-tree: fix d/f conflicts
+ merge-tree: add comments to clarify what these functions are doing
+ merge-tree: lose unused "resolve_directories"
+ merge-tree: lose unused "flags" from merge_list
+ Which merge_file() function do you mean?
Update the disused merge-tree proof-of-concept code.
--------------------------------------------------
[New Topics]
* jk/maint-fast-import-doc-reorder (2013-01-09) 2 commits
(merged to 'next' on 2013-01-10 at 9f3950d)
+ git-fast-import(1): reorganise options
+ git-fast-import(1): combine documentation of --[no-]relative-marks
Will merge to 'master'.
* jk/shortlog-no-wrap-doc (2013-01-09) 1 commit
(merged to 'next' on 2013-01-10 at c79898a)
+ git-shortlog(1): document behaviour of zero-width wrap
Will merge to 'master'.
* jk/unify-exit-code-by-receiving-signal (2013-01-06) 1 commit
(merged to 'next' on 2013-01-08 at 5ebf940)
+ run-command: encode signal death as a positive integer
The internal logic had to deal with two representations of a death
of a child process by a signal.
* rt/commit-cleanup-config (2013-01-10) 1 commit
- commit: make default of "cleanup" option configurable
Add a configuration variable to set default clean-up mode other
than "strip".
Will merge to 'next'.
* jn/xml-depends-on-asciidoc-conf (2013-01-06) 1 commit
(merged to 'next' on 2013-01-08 at 4faf8d4)
+ docs: manpage XML depends on asciidoc.conf
* jc/custom-comment-char (2013-01-10) 1 commit
- Allow custom "comment char"
* nd/upload-pack-shallow-must-be-commit (2013-01-08) 1 commit
(merged to 'next' on 2013-01-10 at a8b3ba5)
+ upload-pack: only accept commits from "shallow" line
An illustration to show codepaths that need to be touched to change
the hint lines in the edited text to begin with something other
than '#'.
A minor consistency check patch that does not have much relevance
to the real world.
* jn/maint-trim-vim-contrib (2013-01-10) 1 commit
- contrib/vim: simplify instructions for old vim support
* nz/send-email-headers-are-case-insensitive (2013-01-06) 1 commit
(merged to 'next' on 2013-01-10 at cf4c9c9)
+ git-send-email: treat field names as case-insensitively
Will merge to 'next'.
When user spells "cc:" in lowercase in the fake "header" in the
trailer part, send-email failed to pick up the addresses from
there. As e-mail headers field names are case insensitive, this
script should follow suit and treat "cc:" and "Cc:" the same way.
* mz/reset-misc (2013-01-10) 22 commits
- reset [--mixed]: use diff-based reset whether or not pathspec was given
- [SQUASH???] script portability fixes
- reset: allow reset on unborn branch
- reset $sha1 $pathspec: require $sha1 only to be treeish
- reset [--mixed] --quiet: don't refresh index
- reset.c: finish entire cmd_reset() whether or not pathspec is given
- reset [--mixed]: don't write index file twice
- reset.c: move lock, write and commit out of update_index_refresh()
- reset.c: move update_index_refresh() call out of read_from_tree()
- reset: avoid redundant error message
- reset --keep: only write index file once
- reset.c: replace switch by if-else
- reset.c: share call to die_if_unmerged_cache()
- [SQUASH???] style fixes
- reset.c: extract function for updating {ORIG,}HEAD
- reset.c: remove unnecessary variable 'i'
- [SQUASH???] style fix
- reset.c: extract function for parsing arguments
- reset: don't allow "git reset -- $pathspec" in bare repo
- reset.c: pass pathspec around instead of (prefix, argv) pair
- reset $pathspec: exit with code 0 if successful
- reset $pathspec: no need to discard index
* rs/zip-tests (2013-01-07) 4 commits
(merged to 'next' on 2013-01-08 at 8e37423)
+ t5003: check if unzip supports symlinks
+ t5000, t5003: move ZIP tests into their own script
+ t0024, t5000: use test_lazy_prereq for UNZIP
+ t0024, t5000: clear variable UNZIP, use GIT_UNZIP instead
Various 'reset' optimizations and clean-ups, followed by a change
to allow "git reset" to work even on an unborn branch.
Updates zip tests to skip some that cannot be handled on platform
unzip.
* pe/doc-email-env-is-trumped-by-config (2013-01-10) 1 commit
- git-commit-tree(1): correct description of defaults
* rs/zip-with-uncompressed-size-in-the-header (2013-01-06) 1 commit
(merged to 'next' on 2013-01-08 at d9ec30e)
+ archive-zip: write uncompressed size into header even with streaming
In the precedence order, the environment variable $EMAIL comes
between the built-in default (i.e. taking value by asking the
system's gethostname() etc.) and the user.email configuration
variable; the documentation implied that it is stronger than the
configuration like $GIT_COMMITTER_EMAIL is, which is wrong.
Will merge to 'next'.
* ds/completion-silence-in-tree-path-probe (2013-01-11) 1 commit
- git-completion.bash: silence "not a valid object" errors
An internal ls-tree call made by completion code only to probe if
a path exists in the tree recorded in a commit object leaked error
messages when the path is not there. It is not an error at all and
should not be shown to the end user.
Will merge to 'next'.
* er/replace-cvsimport (2013-01-11) 4 commits
- t9604: fixup for new cvsimport
- t9600: fixup for new cvsimport
- t/lib-cvs.sh: allow cvsps version 3.x.
- cvsimport: rewrite to use cvsps 3.x to fix major bugs
Rewrite of cvsimport to talk with cvsps 3.x; this negatively
affects existing users of cvsimport that only have cvsps 2.x and
use -o, -M and -m options (they cannot use the old cvsimport with
old cvsps 2.x in the fall-back mode, even though these options are
supported by the old one), but it is not known how common they are.
For people who work with complex CVS histories that needs cvsps 3.x
to import correctly, this version should be a definite improvement,
so I would love to see small wrinkles in the new implementation
straightened out. Help from people with Python experience would be
appreciated in reviewing and patching.
* nd/fetch-depth-is-broken (2013-01-11) 3 commits
- fetch: elaborate --depth action
- upload-pack: fix off-by-one depth calculation in shallow clone
- fetch: add --unshallow for turning shallow repo into complete one
"git fetch --depth" was broken in at least three ways. The
resulting history was deeper than specified by one commit, it was
unclear how to wipe the shallowness of the repository with the
command, and documentation was misleading.
Will merge to 'next'.
* jc/no-git-config-in-clone (2013-01-11) 1 commit
- clone: do not export and unexport GIT_CONFIG
We stopped paying attention to $GIT_CONFIG environment that points
at a single configuration file from any command other than "git config"
quite a while ago, but "git clone" internally set, exported, and
then unexported the variable during its operation unnecessarily.
Improve compatibility of our zip output to fill uncompressed size
in the header, which we can do without seeking back (even though it
should not be necessary).
--------------------------------------------------
[Stalled]
* mp/complete-paths (2013-01-11) 1 commit
- git-completion.bash: add support for path completion
The completion script used to let the default completer to suggest
pathnames, which gave too many irrelevant choices (e.g. "git add"
would not want to add an unmodified path). Teach it to use a more
git-aware logic to enumerate only relevant ones.
Waiting for area-experts' help and review.
* jl/submodule-deinit (2012-12-04) 1 commit
- submodule: add 'deinit' command
@@ -377,14 +340,99 @@ repositories listed at
--------------------------------------------------
[Cooking]
* nz/send-email-headers-are-case-insensitive (2013-01-06) 1 commit
(merged to 'next' on 2013-01-10 at cf4c9c9)
+ git-send-email: treat field names as case-insensitively
* rt/commit-cleanup-config (2013-01-10) 1 commit
- commit: make default of "cleanup" option configurable
When user spells "cc:" in lowercase in the fake "header" in the
trailer part, send-email failed to pick up the addresses from
there. As e-mail headers field names are case insensitive, this
script should follow suit and treat "cc:" and "Cc:" the same way.
Add a configuration variable to set default clean-up mode other
than "strip".
Will merge to 'next'.
* jc/custom-comment-char (2013-01-10) 1 commit
- Allow custom "comment char"
An illustration to show codepaths that need to be touched to change
the hint lines in the edited text to begin with something other
than '#'.
* jn/maint-trim-vim-contrib (2013-01-10) 1 commit
- contrib/vim: simplify instructions for old vim support
Will merge to 'next'.
* mz/reset-misc (2013-01-10) 22 commits
- reset [--mixed]: use diff-based reset whether or not pathspec was given
- [SQUASH???] script portability fixes
- reset: allow reset on unborn branch
- reset $sha1 $pathspec: require $sha1 only to be treeish
- reset [--mixed] --quiet: don't refresh index
- reset.c: finish entire cmd_reset() whether or not pathspec is given
- reset [--mixed]: don't write index file twice
- reset.c: move lock, write and commit out of update_index_refresh()
- reset.c: move update_index_refresh() call out of read_from_tree()
- reset: avoid redundant error message
- reset --keep: only write index file once
- reset.c: replace switch by if-else
- reset.c: share call to die_if_unmerged_cache()
- [SQUASH???] style fixes
- reset.c: extract function for updating {ORIG,}HEAD
- reset.c: remove unnecessary variable 'i'
- [SQUASH???] style fix
- reset.c: extract function for parsing arguments
- reset: don't allow "git reset -- $pathspec" in bare repo
- reset.c: pass pathspec around instead of (prefix, argv) pair
- reset $pathspec: exit with code 0 if successful
- reset $pathspec: no need to discard index
Various 'reset' optimizations and clean-ups, followed by a change
to allow "git reset" to work even on an unborn branch.
* pe/doc-email-env-is-trumped-by-config (2013-01-10) 1 commit
(merged to 'next' on 2013-01-14 at 6b4d555)
+ git-commit-tree(1): correct description of defaults
In the precedence order, the environment variable $EMAIL comes
between the built-in default (i.e. taking value by asking the
system's gethostname() etc.) and the user.email configuration
variable; the documentation implied that it is stronger than the
configuration like $GIT_COMMITTER_EMAIL is, which is wrong.
* ds/completion-silence-in-tree-path-probe (2013-01-11) 1 commit
- git-completion.bash: silence "not a valid object" errors
An internal ls-tree call made by completion code only to probe if
a path exists in the tree recorded in a commit object leaked error
messages when the path is not there. It is not an error at all and
should not be shown to the end user.
Will merge to 'next'.
* nd/fetch-depth-is-broken (2013-01-11) 3 commits
- fetch: elaborate --depth action
- upload-pack: fix off-by-one depth calculation in shallow clone
- fetch: add --unshallow for turning shallow repo into complete one
"git fetch --depth" was broken in at least three ways. The
resulting history was deeper than specified by one commit, it was
unclear how to wipe the shallowness of the repository with the
command, and documentation was misleading.
Will merge to 'next'.
* jc/no-git-config-in-clone (2013-01-11) 1 commit
- clone: do not export and unexport GIT_CONFIG
We stopped paying attention to $GIT_CONFIG environment that points
at a single configuration file from any command other than "git config"
quite a while ago, but "git clone" internally set, exported, and
then unexported the variable during its operation unnecessarily.
* mk/complete-tcsh (2013-01-07) 1 commit
@@ -406,7 +454,7 @@ repositories listed at
contrib/subtree updates.
Will merge to 'next'.
Rerolled?
* ap/log-mailmap (2013-01-10) 11 commits
@@ -427,23 +475,6 @@ repositories listed at
the mailmap.
* nd/upload-pack-shallow-must-be-commit (2013-01-08) 1 commit
(merged to 'next' on 2013-01-10 at a8b3ba5)
+ upload-pack: only accept commits from "shallow" line
A minor consistency check patch that does not have much relevance
to the real world.
* jc/blame-no-follow (2012-09-21) 2 commits
(merged to 'next' on 2013-01-10 at 201c7f4)
+ blame: pay attention to --no-follow
+ diff: accept --no-follow option
Teaches "--no-follow" option to "git blame" to disable its
whole-file rename detection.
* jc/push-2.0-default-to-simple (2013-01-08) 11 commits
(merged to 'next' on 2013-01-09 at 74c3498)
+ doc: push.default is no longer "matching"
@@ -461,23 +492,6 @@ repositories listed at
Will cook in 'next' until Git 2.0 ;-).
* jk/unify-exit-code-by-receiving-signal (2013-01-06) 1 commit
(merged to 'next' on 2013-01-08 at 5ebf940)
+ run-command: encode signal death as a positive integer
The internal logic had to deal with two representations of a death
of a child process by a signal.
Will merge to 'master'.
* jn/xml-depends-on-asciidoc-conf (2013-01-06) 1 commit
(merged to 'next' on 2013-01-08 at 4faf8d4)
+ docs: manpage XML depends on asciidoc.conf
Will merge to 'master'.
* nd/clone-no-separate-git-dir-with-bare (2013-01-10) 1 commit
- clone: forbid --bare --separate-git-dir <dir>
@@ -485,59 +499,32 @@ repositories listed at
* nd/parse-pathspec (2013-01-11) 20 commits
- Convert more init_pathspec() to parse_pathspec()
- Convert add_files_to_cache to take struct pathspec
- Convert {read,fill}_directory to take struct pathspec
- Convert refresh_index to take struct pathspec
- Convert report_path_error to take struct pathspec
- checkout: convert read_tree_some to take struct pathspec
- Convert unmerge_cache to take struct pathspec
- Convert read_cache_preload() to take struct pathspec
- add: convert to use parse_pathspec
- archive: convert to use parse_pathspec
- ls-files: convert to use parse_pathspec
- rm: convert to use parse_pathspec
- checkout: convert to use parse_pathspec
- rerere: convert to use parse_pathspec
- status: convert to use parse_pathspec
- commit: convert to use parse_pathspec
- clean: convert to use parse_pathspec
- Export parse_pathspec() and convert some get_pathspec() calls
- Add parse_pathspec() that converts cmdline args to struct pathspec
- pathspec: save the non-wildcard length part
. Convert more init_pathspec() to parse_pathspec()
. Convert add_files_to_cache to take struct pathspec
. Convert {read,fill}_directory to take struct pathspec
. Convert refresh_index to take struct pathspec
. Convert report_path_error to take struct pathspec
. checkout: convert read_tree_some to take struct pathspec
. Convert unmerge_cache to take struct pathspec
. Convert read_cache_preload() to take struct pathspec
. add: convert to use parse_pathspec
. archive: convert to use parse_pathspec
. ls-files: convert to use parse_pathspec
. rm: convert to use parse_pathspec
. checkout: convert to use parse_pathspec
. rerere: convert to use parse_pathspec
. status: convert to use parse_pathspec
. commit: convert to use parse_pathspec
. clean: convert to use parse_pathspec
. Export parse_pathspec() and convert some get_pathspec() calls
. Add parse_pathspec() that converts cmdline args to struct pathspec
. pathspec: save the non-wildcard length part
Uses the parsed pathspec structure in more places where we used to
use the raw "array of strings" pathspec.
Unfortunately, this conflicts a couple of topics in flight. I tried
to be careful while resolving conflicts, though.
* rs/zip-tests (2013-01-07) 4 commits
(merged to 'next' on 2013-01-08 at 8e37423)
+ t5003: check if unzip supports symlinks
+ t5000, t5003: move ZIP tests into their own script
+ t0024, t5000: use test_lazy_prereq for UNZIP
+ t0024, t5000: clear variable UNZIP, use GIT_UNZIP instead
Updates zip tests to skip some that cannot be handled on platform
unzip.
I've renamed the t5002 in the original to t5003 to avoid name
clashes with another topic in flight.
Will merge to 'master'.
* rs/zip-with-uncompressed-size-in-the-header (2013-01-06) 1 commit
(merged to 'next' on 2013-01-08 at d9ec30e)
+ archive-zip: write uncompressed size into header even with streaming
Improve compatibility of our zip output to fill uncompressed size
in the header, which we can do without seeking back (even though it
should not be necessary).
Will merge to 'master'.
Ejected from 'pu' for now; will take a look at the rerolled one
later ($gmane/213340).
* jc/doc-maintainer (2013-01-03) 2 commits
@@ -549,17 +536,6 @@ repositories listed at
document was originally written.
* fc/remote-testgit-feature-done (2012-10-29) 1 commit
(merged to 'next' on 2013-01-10 at 3132a60)
+ remote-testgit: properly check for errors
In the longer term, tightening rules is a good thing to do, and
because nobody who has worked in the remote helper area seems to be
interested in reviewing this, I would assume they do not think
such a retroactive tightening will affect their remote helpers. So
let's advance this topic to see what happens.
* mo/cvs-server-updates (2012-12-09) 18 commits
(merged to 'next' on 2013-01-08 at 75e2d11)
+ t9402: Use TABs for indentation
@@ -586,57 +562,24 @@ repositories listed at
Will cook in 'next' for a while to see if anybody screams.
* ap/status-ignored-in-ignored-directory (2013-01-07) 3 commits
(merged to 'next' on 2013-01-10 at 20f7476)
+ status: always report ignored tracked directories
(merged to 'next' on 2013-01-07 at 2a20b19)
+ git-status: Test --ignored behavior
+ dir.c: Make git-status --ignored more consistent
Output from "git status --ignored" showed an unexpected interaction
with "--untracked".
* as/check-ignore (2013-01-10) 12 commits
- t0008: avoid brace expansion
- add git-check-ignore sub-command
- setup.c: document get_pathspec()
- add.c: extract new die_if_path_beyond_symlink() for reuse
- add.c: extract check_path_for_gitlink() from treat_gitlinks() for reuse
- pathspec.c: rename newly public functions for clarity
- add.c: move pathspec matchers into new pathspec.c for reuse
- add.c: remove unused argument from validate_pathspec()
- dir.c: improve docs for match_pathspec() and match_pathspec_depth()
- dir.c: provide clear_directory() for reclaiming dir_struct memory
- dir.c: keep track of where patterns came from
- dir.c: use a single struct exclude_list per source of excludes
(merged to 'next' on 2013-01-14 at 9df2afc)
+ t0008: avoid brace expansion
+ add git-check-ignore sub-command
+ setup.c: document get_pathspec()
+ add.c: extract new die_if_path_beyond_symlink() for reuse
+ add.c: extract check_path_for_gitlink() from treat_gitlinks() for reuse
+ pathspec.c: rename newly public functions for clarity
+ add.c: move pathspec matchers into new pathspec.c for reuse
+ add.c: remove unused argument from validate_pathspec()
+ dir.c: improve docs for match_pathspec() and match_pathspec_depth()
+ dir.c: provide clear_directory() for reclaiming dir_struct memory
+ dir.c: keep track of where patterns came from
+ dir.c: use a single struct exclude_list per source of excludes
Add a new command "git check-ignore" for debugging .gitignore
files.
Will merge to 'next'.
* jc/format-patch-reroll (2013-01-03) 9 commits
(merged to 'next' on 2013-01-07 at 0e007e6)
+ format-patch: give --reroll-count a short synonym -v
+ format-patch: document and test --reroll-count
+ format-patch: add --reroll-count=$N option
+ get_patch_filename(): split into two functions
+ get_patch_filename(): drop "just-numbers" hack
+ get_patch_filename(): simplify function signature
+ builtin/log.c: stop using global patch_suffix
+ builtin/log.c: drop redundant "numbered_files" parameter from make_cover_letter()
+ builtin/log.c: drop unused "numbered" parameter from make_cover_letter()
Originally merged to 'next' on 2013-01-04
Teach "format-patch" to prefix v4- to its output files for the
fourth iteration of a patch series, to make it easier for the
submitter to keep separate copies for iterations.
Will merge to 'master'.
* nd/retire-fnmatch (2013-01-01) 7 commits
(merged to 'next' on 2013-01-07 at ab31f9b)
@@ -657,19 +600,6 @@ repositories listed at
Will cook in 'next' a bit longer than other topics.
* jc/merge-blobs (2012-12-26) 5 commits
(merged to 'next' on 2013-01-08 at 582ca38)
+ merge-tree: fix d/f conflicts
+ merge-tree: add comments to clarify what these functions are doing
+ merge-tree: lose unused "resolve_directories"
+ merge-tree: lose unused "flags" from merge_list
+ Which merge_file() function do you mean?
Update the disused merge-tree proof-of-concept code.
Will merge to 'master'.
* mb/gitweb-highlight-link-target (2012-12-20) 1 commit
- Highlight the link target line in Gitweb using CSS
@@ -677,8 +607,7 @@ repositories listed at
$gmane/211935
* zk/clean-report-failure (2013-01-10) 2 commits
- [SQUASH???] style fixes
* zk/clean-report-failure (2013-01-14) 1 commit
- git-clean: Display more accurate delete messages
"git clean" states what it is going to remove and then goes on to
@@ -686,18 +615,7 @@ repositories listed at
removed after recursing into a directory, which makes the output
confusing and even wrong.
Will merge to 'next' after squashing the style fix in.
* mp/complete-paths (2013-01-11) 1 commit
- git-completion.bash: add support for path completion
The completion script used to let the default completer to suggest
pathnames, which gave too many irrelevant choices (e.g. "git add"
would not want to add an unmodified path). Teach it to use a more
git-aware logic to enumerate only relevant ones.
Waiting for area-experts' help and review.
Will merge to 'next'.
* bc/append-signed-off-by (2013-01-01) 12 commits
@@ -716,3 +634,17 @@ repositories listed at
Expecting a reroll.
$gmane/212507
--------------------------------------------------
[Discarded]
* er/replace-cvsimport (2013-01-12) 7 commits
. t/lib-cvs: cvsimport no longer works without Python >= 2.7
. t9605: test for cvsps commit ordering bug
. t9604: fixup for new cvsimport
. t9600: fixup for new cvsimport
. t/lib-cvs.sh: allow cvsps version 3.x.
. t/t960[123]: remove leftover scripts
. cvsimport: rewrite to use cvsps 3.x to fix major bugs
Rerolled as jc/cvsimport-upgrade.