|
|
|
To: git@vger.kernel.org
|
|
|
|
Subject: What's cooking in git.git (Mar 2009, #05; Tue, 17)
|
|
|
|
X-master-at: 642d0844b9795ca7b1424f4afc8d8c86abd7bf34
|
|
|
|
X-next-at: 34201954f04a3f0a1f9457670f24b26704fa31f1
|
|
|
|
|
|
|
|
What's cooking in git.git (Mar 2009, #05; Tue, 17)
|
|
|
|
--------------------------------------------------
|
|
|
|
|
|
|
|
Here are the topics that have been cooking. Commits prefixed with '-' are
|
|
|
|
only in 'pu' while commits prefixed with '+' are in 'next'. The ones
|
|
|
|
marked with '.' do not appear in any of the branches, but I am still
|
|
|
|
holding onto them.
|
|
|
|
|
|
|
|
The topics list the commits in reverse chronological order. The topics
|
|
|
|
meant to be merged to the maintenance series have "maint-" in their names.
|
|
|
|
|
|
|
|
----------------------------------------------------------------
|
|
|
|
[New Topics]
|
|
|
|
|
|
|
|
* dm/maint-docco (Mon Mar 16 23:16:17 2009 -0700) 4 commits
|
|
|
|
+ Documentation: minor grammatical fixes in git-branch.txt.
|
|
|
|
+ Documentation: minor grammatical fixes in git-blame.txt.
|
|
|
|
+ Documentation: reword the "Description" section of git-bisect.txt.
|
|
|
|
+ Documentation: minor grammatical fixes in git-archive.txt.
|
|
|
|
|
|
|
|
* mg/test-installed (Mon Mar 16 18:03:12 2009 +0100) 2 commits
|
|
|
|
+ test-lib.sh: Allow running the test suite against installed git
|
|
|
|
+ test-lib.sh: Test for presence of git-init in the right path.
|
|
|
|
|
|
|
|
----------------------------------------------------------------
|
|
|
|
[Graduated to "master"]
|
|
|
|
|
|
|
|
* kb/checkout-optim (Tue Mar 17 19:20:29 2009 +0100) 20 commits
|
|
|
|
+ Revert "lstat_cache(): print a warning if doing ping-pong between
|
|
|
|
cache types"
|
|
|
|
+ checkout bugfix: use stat.mtime instead of stat.ctime in two
|
|
|
|
places
|
|
|
|
+ Makefile: Set compiler switch for USE_NSEC
|
|
|
|
+ Create USE_ST_TIMESPEC and turn it on for Darwin
|
|
|
|
+ Not all systems use st_[cm]tim field for ns resolution file
|
|
|
|
timestamp
|
|
|
|
+ Record ns-timestamps if possible, but do not use it without
|
|
|
|
USE_NSEC
|
|
|
|
+ write_index(): update index_state->timestamp after flushing to
|
|
|
|
disk
|
|
|
|
+ verify_uptodate(): add ce_uptodate(ce) test
|
|
|
|
+ make USE_NSEC work as expected
|
|
|
|
+ fix compile error when USE_NSEC is defined
|
|
|
|
+ check_updates(): effective removal of cache entries marked
|
|
|
|
CE_REMOVE
|
|
|
|
+ lstat_cache(): print a warning if doing ping-pong between cache
|
|
|
|
types
|
|
|
|
+ show_patch_diff(): remove a call to fstat()
|
|
|
|
+ write_entry(): use fstat() instead of lstat() when file is open
|
|
|
|
+ write_entry(): cleanup of some duplicated code
|
|
|
|
+ create_directories(): remove some memcpy() and strchr() calls
|
|
|
|
+ unlink_entry(): introduce schedule_dir_for_removal()
|
|
|
|
+ lstat_cache(): swap func(length, string) into func(string, length)
|
|
|
|
+ lstat_cache(): generalise longest_match_lstat_cache()
|
|
|
|
+ lstat_cache(): small cleanup and optimisation
|
|
|
|
|
|
|
|
* tr/maint-1.6.0-send-email-irt (Wed Mar 11 23:40:13 2009 +0100) 2 commits
|
|
|
|
+ send-email: test --no-thread --in-reply-to combination
|
|
|
|
+ send-email: respect in-reply-to regardless of threading
|
|
|
|
|
|
|
|
* js/remote-improvements (Sun Mar 8 00:10:33 2009 -0800) 23 commits
|
|
|
|
+ builtin-remote.c: no "commented out" code, please
|
|
|
|
+ builtin-remote: new show output style for push refspecs
|
|
|
|
+ builtin-remote: new show output style
|
|
|
|
+ remote: make guess_remote_head() use exact HEAD lookup if it is
|
|
|
|
available
|
|
|
|
+ builtin-remote: add set-head subcommand
|
|
|
|
+ builtin-remote: teach show to display remote HEAD
|
|
|
|
+ builtin-remote: fix two inconsistencies in the output of "show
|
|
|
|
<remote>"
|
|
|
|
+ builtin-remote: make get_remote_ref_states() always populate
|
|
|
|
states.tracked
|
|
|
|
+ builtin-remote: rename variables and eliminate redundant function
|
|
|
|
call
|
|
|
|
+ builtin-remote: remove unused code in get_ref_states
|
|
|
|
+ builtin-remote: refactor duplicated cleanup code
|
|
|
|
+ string-list: new for_each_string_list() function
|
|
|
|
+ remote: make match_refs() not short-circuit
|
|
|
|
+ remote: make match_refs() copy src ref before assigning to
|
|
|
|
peer_ref
|
|
|
|
+ remote: let guess_remote_head() optionally return all matches
|
|
|
|
+ remote: make copy_ref() perform a deep copy
|
|
|
|
+ remote: simplify guess_remote_head()
|
|
|
|
+ move locate_head() to remote.c
|
|
|
|
+ move duplicated ref_newer() to remote.c
|
|
|
|
+ move duplicated get_local_heads() to remote.c
|
|
|
|
+ refactor find_ref_by_name() to accept const list
|
|
|
|
+ add basic http clone/fetch tests
|
|
|
|
+ test scripts: refactor start_httpd helper
|
|
|
|
|
|
|
|
* rs/color-grep (Mon Mar 16 13:20:04 2009 +1100) 7 commits
|
|
|
|
+ grep: prefer builtin over external one when coloring results
|
|
|
|
+ grep: cast printf %.*s "precision" argument explicitly to int
|
|
|
|
+ grep: add support for coloring with external greps
|
|
|
|
+ grep: color patterns in output
|
|
|
|
+ grep: add pmatch and eflags arguments to match_one_pattern()
|
|
|
|
+ grep: remove grep_opt argument from match_expr_eval()
|
|
|
|
+ grep: micro-optimize hit collection for AND nodes
|
|
|
|
|
|
|
|
* js/rsync-local (Mon Mar 9 19:44:55 2009 +0100) 1 commit
|
|
|
|
+ rsync transport: allow local paths, and fix tests
|
|
|
|
|
|
|
|
* js/sideband-stderr (Tue Mar 10 22:58:09 2009 +0100) 2 commits
|
|
|
|
+ winansi: support ESC [ K (erase in line)
|
|
|
|
+ recv_sideband: Bands #2 and #3 always go to stderr
|
|
|
|
|
|
|
|
* db/maint-missing-origin (Mon Mar 16 00:35:09 2009 -0700) 2 commits
|
|
|
|
+ Remove total confusion from git-fetch and git-push
|
|
|
|
+ Give error when no remote is configured
|
|
|
|
|
|
|
|
* jc/maint-1.6.0-read-tree-overlay (Thu Mar 12 00:02:12 2009 -0700) 1 commit
|
|
|
|
+ read-tree A B C: do not create a bogus index and do not segfault
|
|
|
|
|
|
|
|
With new test.
|
|
|
|
|
|
|
|
----------------------------------------------------------------
|
|
|
|
[Will merge to 'master' soon]
|
|
|
|
|
|
|
|
* fc/parseopt-config (Tue Mar 17 10:46:37 2009 +0100) 10 commits
|
|
|
|
+ config: test for --replace-all with one argument and fix
|
|
|
|
documentation.
|
|
|
|
+ config: set help text for --bool-or-int
|
|
|
|
+ git config: don't allow --get-color* and variable type
|
|
|
|
+ git config: don't allow extra arguments for -e or -l.
|
|
|
|
+ git config: don't allow multiple variable types
|
|
|
|
+ git config: don't allow multiple config file locations
|
|
|
|
+ git config: reorganize to use parseopt
|
|
|
|
+ git config: reorganize get_color*
|
|
|
|
+ git config: trivial rename in preparation for parseopt
|
|
|
|
+ git_config(): not having a per-repo config file is not an error
|
|
|
|
|
|
|
|
* js/rebase-i-opt (Tue Mar 3 10:55:31 2009 +0100) 1 commit
|
|
|
|
+ rebase -i: avoid 'git reset' when possible
|
|
|
|
|
|
|
|
* mh/cvsimport-tests (Mon Feb 23 06:08:14 2009 +0100) 5 commits
|
|
|
|
+ Add a test of "git cvsimport"'s handling of tags and branches
|
|
|
|
+ Add some tests of git-cvsimport's handling of vendor branches
|
|
|
|
+ Test contents of entire cvsimported "master" tree contents
|
|
|
|
+ Use CVS's -f option if available (ignore user's ~/.cvsrc file)
|
|
|
|
+ Start a library for cvsimport-related tests
|
|
|
|
|
|
|
|
* hv/cvsimport-tests (Mon Mar 2 18:59:36 2009 +0100) 1 commit
|
|
|
|
+ cvsimport: add test illustrating a bug in cvsps
|
|
|
|
|
|
|
|
* jc/clone-branch-rebase (Tue Mar 10 01:20:42 2009 -0700) 2 commits
|
|
|
|
+ Improve "git branch --tracking" output
|
|
|
|
+ Make git-clone respect branch.autosetuprebase
|
|
|
|
|
|
|
|
This is a rewrite of a patch from Pat Notz.
|
|
|
|
|
|
|
|
* xx/db-refspec-vs-js-remote (Sun Mar 8 00:12:33 2009 -0800) 1 commit
|
|
|
|
+ Adjust js/remote-improvements and db/refspec-wildcard-in-the-
|
|
|
|
middle
|
|
|
|
|
|
|
|
* db/refspec-wildcard-in-the-middle (Sat Mar 7 01:11:39 2009 -0500) 5 commits
|
|
|
|
+ Support '*' in the middle of a refspec
|
|
|
|
+ Keep '*' in pattern refspecs
|
|
|
|
+ Use the matching function to generate the match results
|
|
|
|
+ Use a single function to match names against patterns
|
|
|
|
+ Make clone parse the default refspec with the normal code
|
|
|
|
|
|
|
|
* bw/autoconf (Thu Mar 12 15:20:12 2009 -0400) 7 commits
|
|
|
|
+ configure: rework pthread handling to allow for user defined flags
|
|
|
|
+ configure: make iconv tests aware of user arguments
|
|
|
|
+ configure: asciidoc version test cleanup
|
|
|
|
+ configure: wrap some library tests with GIT_STASH_FLAGS
|
|
|
|
+ configure: add macros to stash FLAG variables
|
|
|
|
+ configure: reorganize flow of argument checks
|
|
|
|
+ configure: ensure settings from user are also usable in the script
|
|
|
|
|
|
|
|
----------------------------------------------------------------
|
|
|
|
[Stalled and may need help and prodding to go forward]
|
|
|
|
|
|
|
|
* ps/blame (Thu Mar 12 21:30:03 2009 +1100) 1 commit
|
|
|
|
- blame.c: start libifying the blame infrastructure
|
|
|
|
|
|
|
|
A few minor point remains in this initial one.
|
|
|
|
|
|
|
|
* jc/log-tz (Tue Mar 3 00:45:37 2009 -0800) 1 commit
|
|
|
|
- Allow --date=local --date=other-format to work as expected
|
|
|
|
|
|
|
|
The one I posted had a few corner-case bugs that was caught with the test
|
|
|
|
suite; this one has them fixed. People did not like the UI so it is kept
|
|
|
|
out of 'next'
|
|
|
|
|
|
|
|
* lh/submodule-tree-traversal (Sun Jan 25 01:52:06 2009 +0100) 1 commit
|
|
|
|
- archive.c: add support for --submodules[=(all|checkedout)]
|
|
|
|
|
|
|
|
Discussion stalled on the submodule selection criteria.
|
|
|
|
Probably I should discard it and wait for a reroll if needed.
|
|
|
|
|
|
|
|
* jc/merge-convert (Mon Jan 26 16:45:01 2009 -0800) 1 commit
|
|
|
|
- git-merge-file: allow converting the results for the work tree
|
|
|
|
|
|
|
|
This is a feature waiting for a user.
|
|
|
|
|
|
|
|
We did not give scripted Porcelains a way to say "this temporary file I am
|
|
|
|
using for merging is for this path, so use the core.autocrlf and attributes
|
|
|
|
rules for that final path". Instead, merge-file simply wrote out the
|
|
|
|
data in the canonical repository representation.
|
|
|
|
|
|
|
|
rerere has the same issue, but it is a lot worse. It reads the three
|
|
|
|
files (preimage, postimage and thisimage) from the work tree in the work
|
|
|
|
tree representation, merges them without converting them to the canonical
|
|
|
|
representation first but inserts the conflict markers with the canonical
|
|
|
|
representation and writes the resulting mess out. It needs to be fixed to
|
|
|
|
read with convert_to_git(), merge them while they are still in the
|
|
|
|
canonical representation and possibly add conflict markers, and then write
|
|
|
|
the results out after convert_to_working_tree(). It also needs to write
|
|
|
|
in binary mode as well.
|
|
|
|
|
|
|
|
* db/foreign-scm (Sun Jan 11 15:12:10 2009 -0500) 3 commits
|
|
|
|
- Support fetching from foreign VCSes
|
|
|
|
- Add specification of git-vcs helpers
|
|
|
|
- Add "vcs" config option in remotes
|
|
|
|
|
|
|
|
Daniel seems to have a plan for going forward with this series.
|
|
|
|
|
|
|
|
* cc/replace (Mon Feb 2 06:13:06 2009 +0100) 11 commits
|
|
|
|
- builtin-replace: use "usage_msg_opt" to give better error messages
|
|
|
|
- parse-options: add new function "usage_msg_opt"
|
|
|
|
- builtin-replace: teach "git replace" to actually replace
|
|
|
|
- Add new "git replace" command
|
|
|
|
- environment: add global variable to disable replacement
|
|
|
|
- mktag: call "check_sha1_signature" with the replacement sha1
|
|
|
|
- replace_object: add a test case
|
|
|
|
- object: call "check_sha1_signature" with the replacement sha1
|
|
|
|
- sha1_file: add a "read_sha1_file_repl" function
|
|
|
|
- replace_object: add mechanism to replace objects found in
|
|
|
|
"refs/replace/"
|
|
|
|
- refs: add a "for_each_replace_ref" function
|
|
|
|
|
|
|
|
I know, I really have to drop everything else and re-read these, but I
|
|
|
|
haven't managed to.
|
|
|
|
|
|
|
|
* js/notes (Wed Feb 18 11:17:27 2009 -0800) 14 commits
|
|
|
|
- tests: fix "export var=val"
|
|
|
|
- notes: refuse to edit notes outside refs/notes/
|
|
|
|
- t3301: use test_must_fail instead of !
|
|
|
|
- t3301: fix confusing quoting in test for valid notes ref
|
|
|
|
- notes: use GIT_EDITOR and core.editor over VISUAL/EDITOR
|
|
|
|
- notes: only clean up message file when editing
|
|
|
|
- handle empty notes gracefully
|
|
|
|
- git notes show: test empty notes
|
|
|
|
- git-notes: fix printing of multi-line notes
|
|
|
|
- notes: fix core.notesRef documentation
|
|
|
|
- Add an expensive test for git-notes
|
|
|
|
- Speed up git notes lookup
|
|
|
|
- Add a script to edit/inspect notes
|
|
|
|
- Introduce commit notes
|
|
|
|
|
|
|
|
----------------------------------------------------------------
|
|
|
|
[Actively cooking]
|
|
|
|
|
|
|
|
* jc/attributes-checkout (Fri Mar 13 21:24:08 2009 -0700) 1 commit
|
|
|
|
- Read attributes from the index that is being checked out
|
|
|
|
|
|
|
|
* fg/push-default (Mon Mar 16 16:42:52 2009 +0100) 2 commits
|
|
|
|
- Display warning for default git push with no push.default config
|
|
|
|
+ New config push.default to decide default behavior for push
|
|
|
|
|
|
|
|
Replaced the old series with the first step to allow a smooth transition.
|
|
|
|
Some might argue that this should not give any warning but just give users
|
|
|
|
this new configuration to play with first, and after we know we are going
|
|
|
|
to switch default some day, start the warning.
|
|
|
|
|
|
|
|
* mg/http-auth (Thu Mar 12 22:34:43 2009 -0700) 4 commits
|
|
|
|
+ http.c: CURLOPT_NETRC_OPTIONAL is not available in ancient
|
|
|
|
versions of cURL
|
|
|
|
+ http authentication via prompts
|
|
|
|
+ http_init(): Fix config file parsing
|
|
|
|
+ http.c: style cleanups
|
|
|
|
|
|
|
|
This does only the fetch side but without any additional configuration
|
|
|
|
variables that looked like band-aid. Support for push side seems to be in
|
|
|
|
the works somewhere.
|
|
|
|
|
|
|
|
* db/push-cleanup (Sun Mar 8 21:06:07 2009 -0400) 2 commits
|
|
|
|
+ Move push matching and reporting logic into transport.c
|
|
|
|
+ Use a common function to get the pretty name of refs
|
|
|
|
|
|
|
|
* kb/tracking-count-no-merges (Wed Mar 4 18:47:39 2009 +0100) 1 commit
|
|
|
|
+ stat_tracking_info(): only count real commits
|
|
|
|
|
|
|
|
This gives the merge commits zero weight when talking about how many
|
|
|
|
commits you have ahead (or behind) of the branch you are tracking. Even
|
|
|
|
though I agree that they should carry much less weight than the "real"
|
|
|
|
commits, because your repeated merge from the other branch does not really
|
|
|
|
add any real value to the end result, giving them absolute zero weight
|
|
|
|
somehow feels wrong. At least it shows that your have been _active_ on the
|
|
|
|
branch. But I do not feel very strongly about it.
|
|
|
|
|
|
|
|
* mv/parseopt-ls-files (Sat Mar 7 20:27:22 2009 -0500) 4 commits
|
|
|
|
+ ls-files: fix broken --no-empty-directory
|
|
|
|
+ t3000: use test_cmp instead of diff
|
|
|
|
+ parse-opt: migrate builtin-ls-files.
|
|
|
|
+ Turn the flags in struct dir_struct into a single variable
|
|
|
|
|
|
|
|
The tip one was a subject for further discussion, but nothing is queued
|
|
|
|
yet.
|
|
|
|
|
|
|
|
----------------------------------------------------------------
|
|
|
|
[On Hold]
|
|
|
|
|
|
|
|
* jc/deny-delete-current-1.7.0 (Mon Feb 9 00:19:46 2009 -0800) 1 commit
|
|
|
|
- receive-pack: default receive.denyDeleteCurrent to refuse
|
|
|
|
|
|
|
|
* jc/refuse-push-to-current-1.7.0 (Wed Feb 11 02:28:03 2009 -0800) 1 commit
|
|
|
|
- Refuse updating the current branch in a non-bare repository via
|
|
|
|
push
|
|
|
|
|
|
|
|
These are for 1.7.0, but the messages when they trigger together may need
|
|
|
|
to be rethought.
|