What's cooking (2015/08 #05)
parent
a412238701
commit
517a1bb65d
|
|
@ -1,10 +1,10 @@
|
|||
To: git@vger.kernel.org
|
||||
Bcc: lwn@lwn.net
|
||||
Subject: What's cooking in git.git (Aug 2015, #04; Tue, 25)
|
||||
X-master-at: 33f2c4ff7b9ac02cd9010d504e847b912b35baf6
|
||||
X-next-at: f2c83a76d16e5fd4c4f2e37c6ad65b3ba13dc31e
|
||||
Subject: What's cooking in git.git (Aug 2015, #05; Fri, 28)
|
||||
X-master-at: aecce6d0eff68a7144e32247d2e02d9974772ab1
|
||||
X-next-at: bcd55f746af0c6584187e548b53df1562e68a14d
|
||||
|
||||
What's cooking in git.git (Aug 2015, #04; Tue, 25)
|
||||
What's cooking in git.git (Aug 2015, #05; Fri, 28)
|
||||
--------------------------------------------------
|
||||
|
||||
Here are the topics that have been cooking. Commits prefixed with
|
||||
|
|
@ -19,235 +19,11 @@ of the repositories listed at
|
|||
--------------------------------------------------
|
||||
[Graduated to "master"]
|
||||
|
||||
* cb/open-noatime-clear-errno (2015-08-12) 1 commit
|
||||
(merged to 'next' on 2015-08-17 at 6aa43a1)
|
||||
+ git_open_noatime: return with errno=0 on success
|
||||
|
||||
When trying to see that an object does not exist, a state errno
|
||||
leaked from our "first try to open a packfile with O_NOATIME and
|
||||
then if it fails retry without it" logic on a system that refuses
|
||||
O_NOATIME. This confused us and caused us to die, saying that the
|
||||
packfile is unreadable, when we should have just reported that the
|
||||
object does not exist in that packfile to the caller.
|
||||
|
||||
|
||||
* dt/notes-multiple (2015-08-11) 2 commits
|
||||
(merged to 'next' on 2015-08-12 at 0052055)
|
||||
+ notes: handle multiple worktrees
|
||||
+ worktrees: add find_shared_symref
|
||||
|
||||
When linked worktree is used, simultaneous "notes merge" instances
|
||||
for the same ref in refs/notes/* are prevented from stomping on
|
||||
each other.
|
||||
|
||||
|
||||
* dt/refs-pseudo (2015-08-11) 6 commits
|
||||
(merged to 'next' on 2015-08-12 at 7078eb6)
|
||||
+ pseudoref: check return values from read_ref()
|
||||
(merged to 'next' on 2015-08-03 at 3eafd33)
|
||||
+ sequencer: replace write_cherry_pick_head with update_ref
|
||||
+ bisect: use update_ref
|
||||
+ pseudorefs: create and use pseudoref update and delete functions
|
||||
+ refs: add ref_type function
|
||||
+ refs: introduce pseudoref and per-worktree ref concepts
|
||||
|
||||
To prepare for allowing a different "ref" backend to be plugged in
|
||||
to the system, update_ref()/delete_ref() have been taught about
|
||||
ref-like things like MERGE_HEAD that are per-worktree (they will
|
||||
always be written to the filesystem inside $GIT_DIR).
|
||||
|
||||
|
||||
* ee/clean-remove-dirs (2015-08-11) 1 commit
|
||||
(merged to 'next' on 2015-08-12 at fc41b09)
|
||||
+ t7300-clean: require POSIXPERM for chmod 0 test
|
||||
|
||||
Test updates for Windows.
|
||||
|
||||
|
||||
* jc/finalize-temp-file (2015-08-10) 1 commit
|
||||
(merged to 'next' on 2015-08-12 at 6fe62fe)
|
||||
+ sha1_file.c: rename move_temp_to_file() to finalize_object_file()
|
||||
|
||||
Long overdue micro clean-up.
|
||||
|
||||
|
||||
* jh/strbuf-read-use-read-in-full (2015-08-10) 1 commit
|
||||
(merged to 'next' on 2015-08-12 at db16247)
|
||||
+ strbuf_read(): skip unnecessary strbuf_grow() at eof
|
||||
|
||||
strbuf_read() used to have one extra iteration (and an unnecessary
|
||||
strbuf_grow() of 8kB), which was eliminated.
|
||||
|
||||
|
||||
* jk/git-path (2015-08-10) 16 commits
|
||||
(merged to 'next' on 2015-08-12 at 7ebe864)
|
||||
+ memoize common git-path "constant" files
|
||||
+ get_repo_path: refactor path-allocation
|
||||
+ find_hook: keep our own static buffer
|
||||
+ refs.c: remove_empty_directories can take a strbuf
|
||||
+ refs.c: avoid git_path assignment in lock_ref_sha1_basic
|
||||
+ refs.c: avoid repeated git_path calls in rename_tmp_log
|
||||
+ refs.c: simplify strbufs in reflog setup and writing
|
||||
+ path.c: drop git_path_submodule
|
||||
+ refs.c: remove extra git_path calls from read_loose_refs
|
||||
+ remote.c: drop extraneous local variable from migrate_file
|
||||
+ prefer mkpathdup to mkpath in assignments
|
||||
+ prefer git_pathdup to git_path in some possibly-dangerous cases
|
||||
+ add_to_alternates_file: don't add duplicate entries
|
||||
+ t5700: modernize style
|
||||
+ cache.h: complete set of git_path_submodule helpers
|
||||
+ cache.h: clarify documentation for git_path, et al
|
||||
(this branch is used by sb/submodule-helper.)
|
||||
|
||||
git_path() and mkpath() are handy helper functions but it is easy
|
||||
to misuse, as the callers need to be careful to keep the number of
|
||||
active results below 4. Their uses have been reduced.
|
||||
|
||||
|
||||
* jk/guess-repo-name-regression-fix (2015-08-10) 2 commits
|
||||
(merged to 'next' on 2015-08-12 at 4cba33c)
|
||||
+ clone: use computed length in guess_dir_name
|
||||
+ clone: add tests for output directory
|
||||
(this branch is used by ps/guess-repo-name-at-root.)
|
||||
|
||||
"git clone $URL" in recent releases of Git contains a regression in
|
||||
the code that invents a new repository name incorrectly based on
|
||||
the $URL. This has been corrected.
|
||||
|
||||
|
||||
* jk/long-error-messages (2015-08-11) 2 commits
|
||||
(merged to 'next' on 2015-08-12 at 36303cd)
|
||||
+ vreportf: avoid intermediate buffer
|
||||
+ vreportf: report to arbitrary filehandles
|
||||
|
||||
The codepath to produce error messages had a hard-coded limit to
|
||||
the size of the message, primarily to avoid memory allocation while
|
||||
calling die().
|
||||
|
||||
|
||||
* jk/negative-hiderefs (2015-08-07) 2 commits
|
||||
(merged to 'next' on 2015-08-12 at bdc478d)
|
||||
+ refs: support negative transfer.hideRefs
|
||||
+ docs/config.txt: reorder hideRefs config
|
||||
|
||||
A negative !ref entry in multi-value transfer.hideRefs
|
||||
configuration can be used to say "don't hide this one".
|
||||
|
||||
|
||||
* jk/test-with-x (2015-08-07) 2 commits
|
||||
(merged to 'next' on 2015-08-12 at 06576a1)
|
||||
+ test-lib: disable trace when test is not verbose
|
||||
+ test-lib: turn off "-x" tracing during chain-lint check
|
||||
|
||||
Running tests with the "-x" option to make them verbose had some
|
||||
unpleasant interactions with other features of the test suite.
|
||||
|
||||
|
||||
* mh/tempfile (2015-08-12) 16 commits
|
||||
(merged to 'next' on 2015-08-12 at 80efcb7)
|
||||
+ credential-cache--daemon: use tempfile module
|
||||
+ credential-cache--daemon: delete socket from main()
|
||||
+ gc: use tempfile module to handle gc.pid file
|
||||
+ lock_repo_for_gc(): compute the path to "gc.pid" only once
|
||||
+ diff: use tempfile module
|
||||
+ setup_temporary_shallow(): use tempfile module
|
||||
+ write_shared_index(): use tempfile module
|
||||
+ register_tempfile(): new function to handle an existing temporary file
|
||||
+ tempfile: add several functions for creating temporary files
|
||||
+ prepare_tempfile_object(): new function, extracted from create_tempfile()
|
||||
+ tempfile: a new module for handling temporary files
|
||||
+ commit_lock_file(): use get_locked_file_path()
|
||||
+ lockfile: add accessor get_lock_file_path()
|
||||
+ lockfile: add accessors get_lock_file_fd() and get_lock_file_fp()
|
||||
+ create_bundle(): duplicate file descriptor to avoid closing it twice
|
||||
+ lockfile: move documentation to lockfile.h and lockfile.c
|
||||
|
||||
The "lockfile" API has been rebuilt on top of a new "tempfile" API.
|
||||
|
||||
|
||||
* mm/pull-upload-pack (2015-07-30) 1 commit
|
||||
(merged to 'next' on 2015-08-12 at 14d2a52)
|
||||
+ pull.sh: quote $upload_pack when passing it to git-fetch
|
||||
|
||||
"git pull" in recent releases of Git has a regression in the code
|
||||
that allows custom path to the --upload-pack=<program>. This has
|
||||
been corrected.
|
||||
|
||||
Note that this is irrelevant for 'master' with "git pull" rewritten
|
||||
in C.
|
||||
|
||||
|
||||
* nd/dwim-wildcards-as-pathspecs (2015-08-11) 1 commit
|
||||
(merged to 'next' on 2015-08-12 at bb73f4d)
|
||||
+ t2019: skip test requiring '*' in a file name non Windows
|
||||
|
||||
Test updates for Windows.
|
||||
|
||||
|
||||
* ps/guess-repo-name-at-root (2015-08-10) 3 commits
|
||||
(merged to 'next' on 2015-08-12 at 088860f)
|
||||
+ clone: abort if no dir name could be guessed
|
||||
+ clone: do not use port number as dir name
|
||||
+ clone: do not include authentication data in guessed dir
|
||||
(this branch uses jk/guess-repo-name-regression-fix.)
|
||||
|
||||
"git clone $URL", when cloning from a site whose sole purpose is to
|
||||
host a single repository (hence, no path after <scheme>://<site>/),
|
||||
tried to use the site name as the new repository name, but did not
|
||||
remove username or password when <site> part was of the form
|
||||
<user>@<pass>:<host>. The code is taught to redact these.
|
||||
|
||||
|
||||
* ps/t1509-chroot-test-fixup (2015-08-05) 2 commits
|
||||
(merged to 'next' on 2015-08-12 at 6d10ea5)
|
||||
+ tests: fix cleanup after tests in t1509-root-worktree
|
||||
+ tests: fix broken && chains in t1509-root-worktree
|
||||
|
||||
t1509 test that requires a dedicated VM environment had some
|
||||
bitrot, which has been corrected.
|
||||
|
||||
|
||||
* pt/am-builtin-options (2015-08-12) 3 commits
|
||||
(merged to 'next' on 2015-08-12 at e57f754)
|
||||
+ am: let --signoff override --no-signoff
|
||||
+ am: let command-line options override saved options
|
||||
+ test_terminal: redirect child process' stdin to a pty
|
||||
(this branch is used by jc/am-state-fix.)
|
||||
|
||||
After "git am --opt1" stops, running "git am --opt2" pays attention
|
||||
to "--opt2" only for the patch that caused the original invocation
|
||||
to stop.
|
||||
|
||||
|
||||
* sb/check-return-from-read-ref (2015-08-03) 1 commit
|
||||
(merged to 'next' on 2015-08-12 at 4a1c801)
|
||||
+ transport-helper: die on errors reading refs.
|
||||
|
||||
|
||||
* tb/complete-rebase-i-edit-todo (2015-08-05) 1 commit
|
||||
(merged to 'next' on 2015-08-12 at 9606c21)
|
||||
+ completion: offer '--edit-todo' during interactive rebase
|
||||
|
||||
The command-line completion script (in contrib/) has been updated.
|
||||
|
||||
--------------------------------------------------
|
||||
[New Topics]
|
||||
|
||||
* dt/untracked-sparse (2015-08-19) 1 commit
|
||||
(merged to 'next' on 2015-08-25 at 2501a7e)
|
||||
+ t7063: use --force-untracked-cache to speed up a bit
|
||||
(this branch is used by dt/untracked-subdir.)
|
||||
|
||||
Test update.
|
||||
|
||||
Will merge to 'master'.
|
||||
|
||||
|
||||
* as/docfix-reflog-expire-unreachable (2015-08-21) 1 commit
|
||||
(merged to 'next' on 2015-08-25 at eb75d55)
|
||||
+ Documentation/config: fix inconsistent label on gc.*.reflogExpireUnreachable
|
||||
|
||||
Will merge to 'master'.
|
||||
Docfix.
|
||||
|
||||
|
||||
* cc/trailers-corner-case-fix (2015-08-21) 1 commit
|
||||
|
|
@ -257,131 +33,63 @@ of the repositories listed at
|
|||
"interpret-trailers" helper mistook a single-liner log message that
|
||||
has a colon as the end of existing trailer.
|
||||
|
||||
Will merge to 'master'.
|
||||
|
||||
* dt/untracked-sparse (2015-08-19) 1 commit
|
||||
(merged to 'next' on 2015-08-25 at 2501a7e)
|
||||
+ t7063: use --force-untracked-cache to speed up a bit
|
||||
(this branch is used by dt/untracked-subdir.)
|
||||
|
||||
Test update.
|
||||
|
||||
|
||||
* jc/am-state-fix (2015-08-25) 5 commits
|
||||
(merged to 'next' on 2015-08-25 at 4efcd88)
|
||||
+ write_file(): drop caller-supplied LF from calls to create a one-liner file
|
||||
+ write_file_v(): do not leave incomplete line at the end
|
||||
+ write_file(): drop "fatal" parameter
|
||||
+ builtin/am: make sure state files are text
|
||||
+ builtin/am: introduce write_state_*() helper functions
|
||||
* dt/untracked-subdir (2015-08-19) 2 commits
|
||||
(merged to 'next' on 2015-08-25 at ab4fd04)
|
||||
+ untracked cache: fix entry invalidation
|
||||
+ untracked-cache: fix subdirectory handling
|
||||
(this branch uses dt/untracked-sparse.)
|
||||
|
||||
Recent reimplementation of "git am" changed the format of state
|
||||
files kept in $GIT_DIR/rebase-apply/ without meaning to do so,
|
||||
primarily because write_file() API was cumbersome to use and it was
|
||||
easy to mistakenly make text files with incomplete lines. Update
|
||||
write_file() interface to make it harder to misuse.
|
||||
The experimental untracked-cache feature were buggy when paths with
|
||||
a few levels of subdirectories are involved.
|
||||
|
||||
Will merge to 'master'.
|
||||
|
||||
* ep/http-configure-ssl-version (2015-08-17) 1 commit
|
||||
(merged to 'next' on 2015-08-19 at aab726b)
|
||||
+ http: add support for specifying the SSL version
|
||||
|
||||
A new configuration variable http.sslVersion can be used to specify
|
||||
what specific version of SSL/TLS to use to make a connection.
|
||||
|
||||
|
||||
* jc/calloc-pathspec (2015-08-20) 1 commit
|
||||
(merged to 'next' on 2015-08-25 at 877490c)
|
||||
+ ps_matched: xcalloc() takes nmemb and then element size
|
||||
|
||||
Will merge to 'master'.
|
||||
Minor code cleanup.
|
||||
|
||||
|
||||
* jc/log-p-cc (2015-08-25) 4 commits
|
||||
(merged to 'next' on 2015-08-25 at 2d6a6d4)
|
||||
+ builtin/log.c: minor reformat
|
||||
+ log: show merge commit when --cc is given
|
||||
+ log: when --cc is given, default to -p unless told otherwise
|
||||
+ log: rename "tweak" helpers
|
||||
* jv/send-email-selective-smtp-auth (2015-08-17) 1 commit
|
||||
(merged to 'next' on 2015-08-19 at 3f0c693)
|
||||
+ send-email: provide whitelist of SMTP AUTH mechanisms
|
||||
|
||||
"git log --cc" did not show any patch, even though most of the time
|
||||
the user meant "git log --cc -p -m" to see patch output for commits
|
||||
with a single parent, and combined diff for merge commits. The
|
||||
command is taught to DWIM "--cc" (without "--raw" and other forms
|
||||
of output specification) to "--cc -p -m".
|
||||
|
||||
Will merge to 'master'.
|
||||
"git send-email" learned a new option --smtp-auth to limit the SMTP
|
||||
AUTH mechanisms to be used to a subset of what the system library
|
||||
supports.
|
||||
|
||||
|
||||
* jk/fix-alias-pager-config-key-warnings (2015-08-24) 1 commit
|
||||
(merged to 'next' on 2015-08-25 at 89eac5a)
|
||||
+ config: silence warnings for command names with invalid keys
|
||||
* po/po-readme (2015-08-17) 1 commit
|
||||
(merged to 'next' on 2015-08-19 at 1899e59)
|
||||
+ po/README: Update directions for l10n contributors
|
||||
|
||||
Because the configuration system does not allow "alias.0foo" and
|
||||
"pager.0foo" as the configuration key, the user cannot use '0foo'
|
||||
as a custom command name anyway, but "git 0foo" tried to look these
|
||||
keys up and emitted useless warnings before saying '0foo is not a
|
||||
git command'. These warning messages have been squelched.
|
||||
|
||||
Will merge to 'master'.
|
||||
Doc updates for i18n.
|
||||
|
||||
|
||||
* jk/rev-list-has-no-notes (2015-08-24) 1 commit
|
||||
(merged to 'next' on 2015-08-25 at 73cb2ad)
|
||||
+ rev-list: make it obvious that we do not support notes
|
||||
* pt/am-builtin-abort-fix (2015-08-19) 1 commit
|
||||
(merged to 'next' on 2015-08-19 at 729e682)
|
||||
+ am --skip/--abort: merge HEAD/ORIG_HEAD tree into index
|
||||
|
||||
"git rev-list" does not take "--notes" option, but did not complain
|
||||
when one is given.
|
||||
|
||||
Will merge to 'master'.
|
||||
|
||||
|
||||
* kn/for-each-tag (2015-08-25) 15 commits
|
||||
- SQUASH??? a tag longer than 15 bytes break alignment but keeps SP before the message
|
||||
- tag.c: implement '--merged' and '--no-merged' options
|
||||
- tag.c: implement '--format' option
|
||||
- tag.c: use 'ref-filter' APIs
|
||||
- tag.c: use 'ref-filter' data structures
|
||||
- ref-filter: add option to match literal pattern
|
||||
- ref-filter: add support to sort by version
|
||||
- ref-filter: support printing N lines from tag annotation
|
||||
- ref-filter: add option to filter out tags, branches and remotes
|
||||
- ref-filter: implement an `align` atom
|
||||
- utf8: add function to align a string into given strbuf
|
||||
- ref-filter: introduce ref_formatting_state and ref_formatting_stack
|
||||
- ref-filter: move `struct atom_value` to ref-filter.c
|
||||
- Merge 'jk/git-path' into kn/for-each-tag
|
||||
- Merge 'kn/for-each-tag-branch' into kn/for-each-tag
|
||||
(this branch uses kn/for-each-tag-branch.)
|
||||
|
||||
The "ref-filter" code was taught about many parts of what "tag -l"
|
||||
does and then "tag -l" is reimplemented in terms of "ref-filter".
|
||||
|
||||
Almost there...
|
||||
|
||||
|
||||
* nd/fixup-linked-gitdir (2015-08-25) 1 commit
|
||||
- setup: update the right file in multiple checkouts
|
||||
|
||||
The code in "multiple-worktree" support that attempted to recover
|
||||
from an inconsistent state updated an incorrect file.
|
||||
|
||||
Will merge to 'next'.
|
||||
|
||||
|
||||
* nd/ita-cleanup (2015-08-25) 6 commits
|
||||
- grep: make it clear i-t-a entries are ignored
|
||||
- checkout(-index): do not checkout i-t-a entries
|
||||
- apply: make sure check_preimage() does not leave empty file on error
|
||||
- apply: fix adding new files on i-t-a entries
|
||||
- Add and use convenient macro ce_intent_to_add()
|
||||
- blame: remove obsolete comment
|
||||
|
||||
Paths that have been told the index about with "add -N" are not yet
|
||||
in the index, but various commands behaved as if they already are.
|
||||
|
||||
Some commits need better explanation.
|
||||
|
||||
Waiting for a reroll.
|
||||
|
||||
|
||||
* sg/describe-contains (2015-08-25) 1 commit
|
||||
- describe --contains: default to HEAD when no commit-ish is given
|
||||
|
||||
"git describe" without argument defaulted to describe the HEAD
|
||||
commit, but "git describe --contains" didn't. Arguably, in a
|
||||
repository used for active development, such defaulting would not
|
||||
be very useful as the tip of branch is typically not tagged, but it
|
||||
is better to be consistent.
|
||||
|
||||
Will merge to 'next'.
|
||||
"git am" that was recently reimplemented in C had a performance
|
||||
regression in "git am --abort" that goes back to the version before
|
||||
an attempted (and failed) patch application.
|
||||
|
||||
|
||||
* sg/help-group (2015-08-25) 1 commit
|
||||
|
|
@ -391,21 +99,116 @@ of the repositories listed at
|
|||
We rewrote one of the build scripts in Perl but this reimplements
|
||||
in Bourne shell.
|
||||
|
||||
Will merge to 'master'.
|
||||
|
||||
|
||||
* sg/t3020-typofix (2015-08-20) 1 commit
|
||||
(merged to 'next' on 2015-08-25 at 051d6c0)
|
||||
+ t3020: fix typo in test description
|
||||
|
||||
Will merge to 'master'.
|
||||
|
||||
|
||||
* sg/wt-status-header-inclusion (2015-08-21) 1 commit
|
||||
(merged to 'next' on 2015-08-25 at fa5b2b2)
|
||||
+ wt-status: move #include "pathspec.h" to the header
|
||||
|
||||
Will merge to 'master'.
|
||||
|
||||
* ss/fix-config-fd-leak (2015-08-14) 1 commit
|
||||
(merged to 'next' on 2015-08-19 at 80d4880)
|
||||
+ config: close config file handle in case of error
|
||||
|
||||
--------------------------------------------------
|
||||
[New Topics]
|
||||
|
||||
* ah/pack-objects-usage-strings (2015-08-28) 1 commit
|
||||
- pack-objects: place angle brackets around placeholders in usage strings
|
||||
|
||||
Usage string fix.
|
||||
|
||||
Will merge to 'next'.
|
||||
|
||||
|
||||
* ah/read-tree-usage-string (2015-08-28) 1 commit
|
||||
- read-tree: replace bracket set with parentheses to clarify usage
|
||||
|
||||
Usage string fix.
|
||||
|
||||
Will merge to 'next'.
|
||||
|
||||
|
||||
* ah/reflog-typofix-in-error (2015-08-28) 1 commit
|
||||
- reflog: add missing single quote to error message
|
||||
|
||||
Error string fix.
|
||||
|
||||
Will merge to 'next'.
|
||||
|
||||
|
||||
* ah/submodule-typofix-in-error (2015-08-28) 1 commit
|
||||
- git-submodule: remove extraneous space from error message
|
||||
|
||||
Error string fix.
|
||||
|
||||
Will merge to 'next'.
|
||||
|
||||
|
||||
* br/svn-doc-include-paths-config (2015-08-26) 1 commit
|
||||
- git-svn doc: mention "svn-remote.<name>.include-paths"
|
||||
|
||||
Will merge to 'next'.
|
||||
|
||||
|
||||
* dt/commit-preserve-base-index-upon-opportunistic-cache-tree-update (2015-08-28) 1 commit
|
||||
- commit: don't rewrite shared index unnecessarily
|
||||
|
||||
When re-priming the cache-tree opportunistically while committing
|
||||
the in-core index as-is, we mistakenly invalidated the in-core
|
||||
index too aggressively, causing the experimental split-index code
|
||||
to unnecessarily rewrite the on-disk index file(s).
|
||||
|
||||
Will merge to 'next'.
|
||||
|
||||
|
||||
* dt/refs-bisection (2015-08-28) 5 commits
|
||||
- bisect: make bisection refs per-worktree
|
||||
- refs: make refs/worktree/* per-worktree
|
||||
- SQUASH???
|
||||
- path: optimize common dir checking
|
||||
- refs: clean up common_list
|
||||
|
||||
Move the refs used during a "git bisect" session to per-worktree
|
||||
hierarchy refs/worktree/* so that independent bisect sessions can
|
||||
be done in different worktrees.
|
||||
|
||||
Will merge to 'next' after squashing the update in.
|
||||
|
||||
|
||||
* ld/p4-import-labels (2015-08-28) 3 commits
|
||||
- git-p4: fix P4 label import for unprocessed commits
|
||||
- git-p4: do not terminate creating tag for unknown commit
|
||||
- git-p4: failing test for ignoring invalid p4 labels
|
||||
|
||||
|
||||
* ls/p4-fold-case-client-specs (2015-08-28) 1 commit
|
||||
- git-p4: honor core.ignorecase when using P4 client specs
|
||||
|
||||
On case insensitive systems, "git p4" did not work well with client
|
||||
specs.
|
||||
|
||||
Will merge to 'next'.
|
||||
|
||||
* rs/archive-zip-many (2015-08-28) 3 commits
|
||||
- archive-zip: support more than 65535 entries
|
||||
- archive-zip: use a local variable to store the creator version
|
||||
- t5004: test ZIP archives with many entries
|
||||
|
||||
"git archive" did not use zip64 extension when creating an archive
|
||||
with more than 64k entries, which nobody should need, right ;-)?
|
||||
|
||||
Will merge to 'next'.
|
||||
|
||||
|
||||
* rt/remove-hold-lockfile-for-append (2015-08-28) 1 commit
|
||||
- lockfile: remove function "hold_lock_file_for_append"
|
||||
|
||||
Will merge to 'next'.
|
||||
|
||||
--------------------------------------------------
|
||||
[Stalled]
|
||||
|
|
@ -480,7 +283,7 @@ of the repositories listed at
|
|||
worse, atoi()). Introduce a set of wrappers that try to be more
|
||||
careful.
|
||||
|
||||
Expecting a reroll.
|
||||
Waiting for a reroll.
|
||||
($gmane/268058).
|
||||
|
||||
|
||||
|
|
@ -507,7 +310,7 @@ of the repositories listed at
|
|||
|
||||
This is the first two commits in a three-patch series $gmane/266962
|
||||
|
||||
Expecting a reroll.
|
||||
Waiting for a reroll.
|
||||
with updated log message ($gmane/268061).
|
||||
|
||||
|
||||
|
|
@ -532,7 +335,7 @@ of the repositories listed at
|
|||
- show-index: uniform error messages for index read
|
||||
|
||||
The tip was RFC.
|
||||
Expecting a reroll.
|
||||
Waiting for a reroll.
|
||||
|
||||
|
||||
* jk/log-missing-default-HEAD (2015-06-03) 1 commit
|
||||
|
|
@ -551,7 +354,7 @@ of the repositories listed at
|
|||
Introduce "branch^{/!-<pattern>}" notation to name a commit
|
||||
reachable from branch that does not match the given pattern.
|
||||
|
||||
Expecting a reroll.
|
||||
Waiting for a reroll.
|
||||
|
||||
|
||||
* mk/utf8-no-iconv-warn (2015-06-08) 1 commit
|
||||
|
|
@ -563,7 +366,7 @@ of the repositories listed at
|
|||
iconv support when the specified encoding is not available, but the
|
||||
patch does not go there.
|
||||
|
||||
Expecting a reroll.
|
||||
Waiting for a reroll.
|
||||
|
||||
|
||||
* ak/format-patch-odir-config (2015-06-19) 1 commit
|
||||
|
|
@ -572,7 +375,7 @@ of the repositories listed at
|
|||
Reroll exists but didn't pick it up as it seemed to be still
|
||||
collecting review comments.
|
||||
|
||||
Expecting a reroll.
|
||||
Waiting for a reroll.
|
||||
($gmane/272180).
|
||||
|
||||
|
||||
|
|
@ -672,23 +475,144 @@ of the repositories listed at
|
|||
--------------------------------------------------
|
||||
[Cooking]
|
||||
|
||||
* jc/am-state-fix (2015-08-25) 5 commits
|
||||
(merged to 'next' on 2015-08-25 at 4efcd88)
|
||||
+ write_file(): drop caller-supplied LF from calls to create a one-liner file
|
||||
+ write_file_v(): do not leave incomplete line at the end
|
||||
+ write_file(): drop "fatal" parameter
|
||||
+ builtin/am: make sure state files are text
|
||||
+ builtin/am: introduce write_state_*() helper functions
|
||||
|
||||
Recent reimplementation of "git am" changed the format of state
|
||||
files kept in $GIT_DIR/rebase-apply/ without meaning to do so,
|
||||
primarily because write_file() API was cumbersome to use and it was
|
||||
easy to mistakenly make text files with incomplete lines. Update
|
||||
write_file() interface to make it harder to misuse.
|
||||
|
||||
Will merge to 'master'.
|
||||
|
||||
|
||||
* jc/log-p-cc (2015-08-25) 4 commits
|
||||
(merged to 'next' on 2015-08-25 at 2d6a6d4)
|
||||
+ builtin/log.c: minor reformat
|
||||
+ log: show merge commit when --cc is given
|
||||
+ log: when --cc is given, default to -p unless told otherwise
|
||||
+ log: rename "tweak" helpers
|
||||
|
||||
"git log --cc" did not show any patch, even though most of the time
|
||||
the user meant "git log --cc -p -m" to see patch output for commits
|
||||
with a single parent, and combined diff for merge commits. The
|
||||
command is taught to DWIM "--cc" (without "--raw" and other forms
|
||||
of output specification) to "--cc -p -m".
|
||||
|
||||
Will merge to 'master'.
|
||||
|
||||
|
||||
* jk/fix-alias-pager-config-key-warnings (2015-08-24) 1 commit
|
||||
(merged to 'next' on 2015-08-25 at 89eac5a)
|
||||
+ config: silence warnings for command names with invalid keys
|
||||
|
||||
Because the configuration system does not allow "alias.0foo" and
|
||||
"pager.0foo" as the configuration key, the user cannot use '0foo'
|
||||
as a custom command name anyway, but "git 0foo" tried to look these
|
||||
keys up and emitted useless warnings before saying '0foo is not a
|
||||
git command'. These warning messages have been squelched.
|
||||
|
||||
Will merge to 'master'.
|
||||
|
||||
|
||||
* jk/rev-list-has-no-notes (2015-08-24) 1 commit
|
||||
(merged to 'next' on 2015-08-25 at 73cb2ad)
|
||||
+ rev-list: make it obvious that we do not support notes
|
||||
|
||||
"git rev-list" does not take "--notes" option, but did not complain
|
||||
when one is given.
|
||||
|
||||
Will merge to 'master'.
|
||||
|
||||
|
||||
* kn/for-each-tag (2015-08-25) 15 commits
|
||||
- SQUASH??? a tag longer than 15 bytes break alignment but keeps SP before the message
|
||||
- tag.c: implement '--merged' and '--no-merged' options
|
||||
- tag.c: implement '--format' option
|
||||
- tag.c: use 'ref-filter' APIs
|
||||
- tag.c: use 'ref-filter' data structures
|
||||
- ref-filter: add option to match literal pattern
|
||||
- ref-filter: add support to sort by version
|
||||
- ref-filter: support printing N lines from tag annotation
|
||||
- ref-filter: add option to filter out tags, branches and remotes
|
||||
- ref-filter: implement an `align` atom
|
||||
- utf8: add function to align a string into given strbuf
|
||||
- ref-filter: introduce ref_formatting_state and ref_formatting_stack
|
||||
- ref-filter: move `struct atom_value` to ref-filter.c
|
||||
- Merge 'jk/git-path' into kn/for-each-tag
|
||||
- Merge 'kn/for-each-tag-branch' into kn/for-each-tag
|
||||
(this branch uses kn/for-each-tag-branch.)
|
||||
|
||||
The "ref-filter" code was taught about many parts of what "tag -l"
|
||||
does and then "tag -l" is reimplemented in terms of "ref-filter".
|
||||
|
||||
Almost there...
|
||||
Waiting for a reroll.
|
||||
($gmane/276615, $gmane/276529, $gmane/276607, $gmane/276606, etc.)
|
||||
|
||||
|
||||
* nd/fixup-linked-gitdir (2015-08-25) 1 commit
|
||||
(merged to 'next' on 2015-08-26 at 7b8a1aa)
|
||||
+ setup: update the right file in multiple checkouts
|
||||
|
||||
The code in "multiple-worktree" support that attempted to recover
|
||||
from an inconsistent state updated an incorrect file.
|
||||
|
||||
Will merge to 'master'.
|
||||
|
||||
|
||||
* nd/ita-cleanup (2015-08-25) 6 commits
|
||||
- grep: make it clear i-t-a entries are ignored
|
||||
- checkout(-index): do not checkout i-t-a entries
|
||||
- apply: make sure check_preimage() does not leave empty file on error
|
||||
- apply: fix adding new files on i-t-a entries
|
||||
- Add and use convenient macro ce_intent_to_add()
|
||||
- blame: remove obsolete comment
|
||||
|
||||
Paths that have been told the index about with "add -N" are not yet
|
||||
in the index, but various commands behaved as if they already are.
|
||||
|
||||
Some commits need better explanation.
|
||||
|
||||
Waiting for a reroll.
|
||||
|
||||
|
||||
* sg/describe-contains (2015-08-25) 1 commit
|
||||
(merged to 'next' on 2015-08-26 at a7c66d9)
|
||||
+ describe --contains: default to HEAD when no commit-ish is given
|
||||
|
||||
"git describe" without argument defaulted to describe the HEAD
|
||||
commit, but "git describe --contains" didn't. Arguably, in a
|
||||
repository used for active development, such defaulting would not
|
||||
be very useful as the tip of branch is typically not tagged, but it
|
||||
is better to be consistent.
|
||||
|
||||
Will merge to 'master'.
|
||||
|
||||
|
||||
* db/push-sign-if-asked (2015-08-19) 9 commits
|
||||
- push: add a config option push.gpgSign for default signed pushes
|
||||
- push: support signing pushes iff the server supports it
|
||||
- builtin/send-pack.c: use parse_options API
|
||||
- config.c: rename git_config_maybe_bool_text and export it as git_parse_maybe_bool
|
||||
- transport: remove git_transport_options.push_cert
|
||||
- gitremote-helpers.txt: document pushcert option
|
||||
- Documentation/git-send-pack.txt: document --signed
|
||||
- Documentation/git-send-pack.txt: wrap long synopsis line
|
||||
- Documentation/git-push.txt: document when --signed may fail
|
||||
(merged to 'next' on 2015-08-26 at a7a32e9)
|
||||
+ push: add a config option push.gpgSign for default signed pushes
|
||||
+ push: support signing pushes iff the server supports it
|
||||
+ builtin/send-pack.c: use parse_options API
|
||||
+ config.c: rename git_config_maybe_bool_text and export it as git_parse_maybe_bool
|
||||
+ transport: remove git_transport_options.push_cert
|
||||
+ gitremote-helpers.txt: document pushcert option
|
||||
+ Documentation/git-send-pack.txt: document --signed
|
||||
+ Documentation/git-send-pack.txt: wrap long synopsis line
|
||||
+ Documentation/git-push.txt: document when --signed may fail
|
||||
|
||||
The client side codepaths in "git push" have been cleaned up
|
||||
and the user can request to perform an optional "signed push",
|
||||
i.e. sign only when the other end accepts signed push.
|
||||
|
||||
I think this is ready for 'next', but did I miss comments that need
|
||||
to be addressed before it happens?
|
||||
Will merge to 'master'.
|
||||
|
||||
|
||||
* dk/gc-idx-wo-pack (2015-08-17) 3 commits
|
||||
|
|
@ -699,53 +623,7 @@ of the repositories listed at
|
|||
Having a leftover .idx file without correspoinding .pack file in
|
||||
the repository hurts performance; "git gc" learned to prune them.
|
||||
|
||||
Expecting a reroll.
|
||||
|
||||
|
||||
* ep/http-configure-ssl-version (2015-08-17) 1 commit
|
||||
(merged to 'next' on 2015-08-19 at aab726b)
|
||||
+ http: add support for specifying the SSL version
|
||||
|
||||
A new configuration variable http.sslVersion can be used to specify
|
||||
what specific version of SSL/TLS to use to make a connection.
|
||||
|
||||
Will merge to 'master'.
|
||||
|
||||
|
||||
* jv/send-email-selective-smtp-auth (2015-08-17) 1 commit
|
||||
(merged to 'next' on 2015-08-19 at 3f0c693)
|
||||
+ send-email: provide whitelist of SMTP AUTH mechanisms
|
||||
|
||||
"git send-email" learned a new option --smtp-auth to limit the SMTP
|
||||
AUTH mechanisms to be used to a subset of what the system library
|
||||
supports.
|
||||
|
||||
Will merge to 'master'.
|
||||
|
||||
|
||||
* po/po-readme (2015-08-17) 1 commit
|
||||
(merged to 'next' on 2015-08-19 at 1899e59)
|
||||
+ po/README: Update directions for l10n contributors
|
||||
|
||||
Will merge to 'master'.
|
||||
|
||||
|
||||
* pt/am-builtin-abort-fix (2015-08-19) 1 commit
|
||||
(merged to 'next' on 2015-08-19 at 729e682)
|
||||
+ am --skip/--abort: merge HEAD/ORIG_HEAD tree into index
|
||||
|
||||
"git am" that was recently reimplemented in C had a performance
|
||||
regression in "git am --abort" that goes back to the version before
|
||||
an attempted (and failed) patch application.
|
||||
|
||||
Will merge to 'master'.
|
||||
|
||||
|
||||
* ss/fix-config-fd-leak (2015-08-14) 1 commit
|
||||
(merged to 'next' on 2015-08-19 at 80d4880)
|
||||
+ config: close config file handle in case of error
|
||||
|
||||
Will merge to 'master'.
|
||||
Waiting for a reroll.
|
||||
|
||||
|
||||
* bb/remote-get-url (2015-08-05) 1 commit
|
||||
|
|
@ -759,19 +637,19 @@ of the repositories listed at
|
|||
|
||||
|
||||
* jk/notes-merge-config (2015-08-17) 6 commits
|
||||
- notes: teach git-notes about notes.<name>.mergeStrategy option
|
||||
- notes: add notes.mergeStrategy option to select default strategy
|
||||
- notes: add tests for --commit/--abort/--strategy exclusivity
|
||||
- notes: extract parse_notes_merge_strategy to notes-utils
|
||||
- notes: extract enum notes_merge_strategy to notes-utils.h
|
||||
- notes: document cat_sort_uniq rewriteMode
|
||||
(merged to 'next' on 2015-08-26 at 6dd2286)
|
||||
+ notes: teach git-notes about notes.<name>.mergeStrategy option
|
||||
+ notes: add notes.mergeStrategy option to select default strategy
|
||||
+ notes: add tests for --commit/--abort/--strategy exclusivity
|
||||
+ notes: extract parse_notes_merge_strategy to notes-utils
|
||||
+ notes: extract enum notes_merge_strategy to notes-utils.h
|
||||
+ notes: document cat_sort_uniq rewriteMode
|
||||
|
||||
"git notes merge" can be told with "--strategy=<how>" option how to
|
||||
automatically handle conflicts; this can now be configured by
|
||||
setting notes.merge configuration variable.
|
||||
|
||||
I think this is ready for 'next', but did I miss comments that need
|
||||
to be addressed before it happens?
|
||||
Will merge to 'master'.
|
||||
|
||||
|
||||
* hv/submodule-config (2015-08-19) 4 commits
|
||||
|
|
@ -788,10 +666,9 @@ of the repositories listed at
|
|||
Will merge to 'master'.
|
||||
|
||||
|
||||
* sb/submodule-helper (2015-08-25) 7 commits
|
||||
* sb/submodule-helper (2015-08-26) 6 commits
|
||||
- submodule: helper to run foreach in parallel
|
||||
- thread-utils: add a threaded task queue
|
||||
- FIXUP submodule: implement `module_clone` as a builtin helper
|
||||
- submodule: implement `module_clone` as a builtin helper
|
||||
- submodule: implement `module_name` as a builtin helper
|
||||
- submodule: implement `module_list` as a builtin helper
|
||||
|
|
@ -802,18 +679,6 @@ of the repositories listed at
|
|||
incrementally. These early part looks promising.
|
||||
|
||||
|
||||
* dt/untracked-subdir (2015-08-19) 2 commits
|
||||
(merged to 'next' on 2015-08-25 at ab4fd04)
|
||||
+ untracked cache: fix entry invalidation
|
||||
+ untracked-cache: fix subdirectory handling
|
||||
(this branch uses dt/untracked-sparse.)
|
||||
|
||||
The experimental untracked-cache feature were buggy when paths with
|
||||
a few levels of subdirectories are involved.
|
||||
|
||||
Will merge to 'master'.
|
||||
|
||||
|
||||
* ad/cygwin-wants-rename (2015-08-07) 1 commit
|
||||
- config.mak.uname: Cygwin needs OBJECT_CREATION_USES_RENAMES
|
||||
|
||||
|
|
@ -861,32 +726,33 @@ of the repositories listed at
|
|||
|
||||
|
||||
* jc/rerere (2015-07-24) 21 commits
|
||||
- rerere: un-nest merge() further
|
||||
- rerere: use "struct rerere_id" instead of "char *" for conflict ID
|
||||
- rerere: call conflict-ids IDs
|
||||
- rerere: further clarify do_rerere_one_path()
|
||||
- rerere: further de-dent do_plain_rerere()
|
||||
- rerere: refactor "replay" part of do_plain_rerere()
|
||||
- rerere: explain the remainder
|
||||
- rerere: explain "rerere forget" codepath
|
||||
- rerere: explain the primary codepath
|
||||
- rerere: explain MERGE_RR management helpers
|
||||
- rerere: fix benign off-by-one non-bug and clarify code
|
||||
- rerere: explain the rerere I/O abstraction
|
||||
- rerere: do not leak mmfile[] for a path with multiple stage #1 entries
|
||||
- rerere: stop looping unnecessarily
|
||||
- rerere: drop want_sp parameter from is_cmarker()
|
||||
- rerere: report autoupdated paths only after actually updating them
|
||||
- rerere: write out each record of MERGE_RR in one go
|
||||
- rerere: lift PATH_MAX limitation
|
||||
- rerere: plug conflict ID leaks
|
||||
- rerere: handle conflicts with multiple stage #1 entries
|
||||
- rerere: fix an off-by-one non-bug
|
||||
(merged to 'next' on 2015-08-26 at 8ae15ef)
|
||||
+ rerere: un-nest merge() further
|
||||
+ rerere: use "struct rerere_id" instead of "char *" for conflict ID
|
||||
+ rerere: call conflict-ids IDs
|
||||
+ rerere: further clarify do_rerere_one_path()
|
||||
+ rerere: further de-dent do_plain_rerere()
|
||||
+ rerere: refactor "replay" part of do_plain_rerere()
|
||||
+ rerere: explain the remainder
|
||||
+ rerere: explain "rerere forget" codepath
|
||||
+ rerere: explain the primary codepath
|
||||
+ rerere: explain MERGE_RR management helpers
|
||||
+ rerere: fix benign off-by-one non-bug and clarify code
|
||||
+ rerere: explain the rerere I/O abstraction
|
||||
+ rerere: do not leak mmfile[] for a path with multiple stage #1 entries
|
||||
+ rerere: stop looping unnecessarily
|
||||
+ rerere: drop want_sp parameter from is_cmarker()
|
||||
+ rerere: report autoupdated paths only after actually updating them
|
||||
+ rerere: write out each record of MERGE_RR in one go
|
||||
+ rerere: lift PATH_MAX limitation
|
||||
+ rerere: plug conflict ID leaks
|
||||
+ rerere: handle conflicts with multiple stage #1 entries
|
||||
+ rerere: fix an off-by-one non-bug
|
||||
(this branch is used by jc/rerere-multi.)
|
||||
|
||||
Code clean-up and minor fixes (so far).
|
||||
Code clean-up and minor fixes.
|
||||
|
||||
Will merge to 'next'.
|
||||
Will merge to 'master'.
|
||||
|
||||
|
||||
* jc/rerere-multi (2015-07-30) 7 commits
|
||||
|
|
|
|||
Loading…
Reference in New Issue