[ANNOUNCE] GIT 1.4.3

From: Junio C Hamano
Date: Wed Oct 18 2006 - 19:53:50 EST


The latest feature release GIT 1.4.3 is available at the usual
places:

http://www.kernel.org/pub/software/scm/git/

git-1.4.3.tar.{gz,bz2} (tarball)
git-htmldocs-1.4.3.tar.{gz,bz2} (preformatted docs)
git-manpages-1.4.3.tar.{gz,bz2} (preformatted docs)
RPMS/$arch/git-*-1.4.3-1.$arch.rpm (RPM)

Please holler if i386 RPMs are broken, since they are not cut on
the machine I am used to use (I ended up burning half a day
installing and futzing with FC5 on my older laptop resurrected
from the boneyard).

User visible changes, other than bugfixes, since v1.4.2.4 are:

- upload-tar is deprecated but not removed; we now have
upload-archive --format=tar and --format=zip instead.

- ftp:// protocol is supported the same way as http:// and
https://

- git-diff paginates its output to the tty by default. If this
irritates you, using LESS=RF might help.

- git-cherry-pick does not leave often useless "cherry-picked
from" message.

- git-merge-recursive was replaced by a rewritten implemention
in C. The original Python implementation is available as
"recursive-old" strategy for now, but hopefully we can remove
it in the next cycle.

- git-daemon can do name based virtual hosting.

- git-daemon can serve tar and zip snapshots.

- many gitweb tweaks and cleanups.

- git-apply --reverse, --reject.

- git-diff --color highlights whitespace errors.

- git-diff --stat can be taught to use non-default widths.

- git-status can use colors.

- many more commands are built-in.

----------------------------------------------------------------

.gitignore | 10 +-
Documentation/Makefile | 4 +-
Documentation/asciidoc.conf | 1 +
Documentation/config.txt | 34 +
Documentation/core-tutorial.txt | 2 +-
Documentation/cvs-migration.txt | 2 +-
Documentation/diff-options.txt | 10 +-
Documentation/git-apply.txt | 69 +-
.../{git-tar-tree.txt => git-archive.txt} | 93 +-
Documentation/git-blame.txt | 29 +-
Documentation/git-cherry-pick.txt | 23 +-
Documentation/git-daemon.txt | 135 +-
Documentation/git-grep.txt | 15 +-
Documentation/git-http-push.txt | 2 +-
Documentation/git-init-db.txt | 4 +
Documentation/git-ls-remote.txt | 18 +-
Documentation/git-pack-objects.txt | 26 +-
Documentation/git-receive-pack.txt | 2 +
Documentation/git-repack.txt | 13 +-
Documentation/git-repo-config.txt | 3 +-
Documentation/git-rev-list.txt | 428 ++-
Documentation/git-rev-parse.txt | 2 +-
Documentation/git-send-pack.txt | 2 +-
Documentation/git-shortlog.txt | 17 +-
Documentation/git-svn.txt | 399 ++-
Documentation/git-tar-tree.txt | 3 +
Documentation/git-unpack-objects.txt | 8 +-
Documentation/git-update-index.txt | 4 +-
.../{git-upload-tar.txt => git-upload-archive.txt} | 24 +-
Documentation/git.txt | 37 +-
Documentation/gitk.txt | 151 +-
Documentation/glossary.txt | 4 +-
Documentation/hooks.txt | 56 +-
Documentation/technical/racy-git.txt | 193 +
Documentation/tutorial-2.txt | 2 +-
GIT-VERSION-GEN | 2 +-
INSTALL | 15 +-
Makefile | 297 +-
builtin-tar-tree.c => archive-tar.c | 229 +-
archive-zip.c | 333 ++
archive.h | 47 +
blame.c | 19 +-
builtin-apply.c | 708 +++-
builtin-archive.c | 263 ++
builtin-cat-file.c | 40 +-
checkout-index.c => builtin-checkout-index.c | 29 +-
builtin-commit-tree.c | 2 +-
builtin-count.c => builtin-count-objects.c | 2 +-
builtin-diff-files.c | 7 -
builtin-diff-stages.c | 2 +-
builtin-diff.c | 16 +-
builtin-fmt-merge-msg.c | 39 +-
builtin-grep.c | 650 +---
builtin-init-db.c | 1 +
builtin-log.c | 7 +-
builtin-ls-files.c | 27 +-
builtin-ls-tree.c | 6 +-
builtin-mailinfo.c | 17 +-
builtin-mv.c | 12 +-
name-rev.c => builtin-name-rev.c | 8 +-
pack-objects.c => builtin-pack-objects.c | 439 ++-
builtin-prune-packed.c | 2 +-
builtin-prune.c | 4 +-
builtin-push.c | 32 +-
builtin-read-tree.c | 865 +----
builtin-repo-config.c | 34 +-
builtin-rev-list.c | 171 +-
builtin-rev-parse.c | 10 +-
builtin-rm.c | 2 +-
builtin-runstatus.c | 36 +
builtin-show-branch.c | 18 +-
symbolic-ref.c => builtin-symbolic-ref.c | 8 +-
builtin-tar-tree.c | 439 +--
unpack-objects.c => builtin-unpack-objects.c | 78 +-
builtin-update-index.c | 18 +-
builtin-update-ref.c | 2 +-
builtin-upload-archive.c | 175 +
builtin-upload-tar.c | 74 -
verify-pack.c => builtin-verify-pack.c | 15 +-
builtin-write-tree.c | 4 +-
builtin.h | 86 +-
cache-tree.c | 14 +-
cache.h | 68 +-
check-racy.c | 28 +
color.c | 176 +
color.h | 12 +
combine-diff.c | 41 +-
commit.c | 51 +-
commit.h | 2 +-
compat/inet_pton.c | 220 +
config.c | 18 +-
config.mak.in | 18 +
configure.ac | 561 ++-
connect.c | 50 +-
contrib/completion/git-completion.bash | 324 ++
contrib/emacs/git.el | 4 +-
contrib/emacs/vc-git.el | 6 +-
contrib/gitview/gitview.txt | 56 +-
contrib/vim/README | 8 +
contrib/vim/syntax/gitcommit.vim | 18 +
convert-objects.c | 8 +-
csum-file.c | 6 +-
daemon.c | 431 ++-
date.c | 132 +-
describe.c | 14 +-
diff-delta.c | 4 +-
diff-lib.c | 32 +-
diff.c | 666 ++-
diff.h | 15 +-
diffcore-break.c | 2 +-
diffcore-rename.c | 2 +-
dir.c | 48 +-
dir.h | 1 +
dump-cache-tree.c | 2 +-
entry.c | 4 +-
environment.c | 20 +-
exec_cmd.c | 20 +-
fetch-clone.c | 33 +-
fetch-pack.c | 24 +-
fetch.c | 9 +-
fsck-objects.c | 44 +-
generate-cmdlist.sh | 1 +
git-branch.sh | 10 +
git-checkout.sh | 9 +-
git-cherry.sh | 3 -
git-clone.sh | 8 +-
git-commit.sh | 582 +--
git-compat-util.h | 18 +-
git-cvsexportcommit.perl | 2 +-
git-cvsserver.perl | 65 +-
git-fetch.sh | 26 +-
git-ls-remote.sh | 6 +-
...erge-recursive.py => git-merge-recursive-old.py | 0
git-merge.sh | 5 +-
git-parse-remote.sh | 43 +-
git-pull.sh | 2 +-
git-rebase.sh | 6 +-
git-repack.sh | 25 +-
git-reset.sh | 3 -
git-resolve.sh | 4 +
git-revert.sh | 14 +-
git-send-email.perl | 42 +-
git-shortlog.perl | 44 +-
git-svn.perl | 122 +-
git-svnimport.perl | 35 +-
git.c | 131 +-
git.spec.in | 23 +-
gitk | 682 +++-
gitweb/README | 61 +-
gitweb/git-favicon.png | Bin
gitweb/git-logo.png | Bin
gitweb/gitweb.css | 80 +-
gitweb/{gitweb.cgi => gitweb.perl} | 4459 ++++++++++++--------
grep.c | 498 +++
grep.h | 79 +
builtin-help.c => help.c | 4 +-
http-fetch.c | 303 +--
http-push.c | 95 +-
http.c | 12 +
http.h | 4 +
imap-send.c | 45 +-
index-pack.c | 16 +-
interpolate.c | 108 +
interpolate.h | 26 +
builtin-prune.c => list-objects.c | 255 +-
list-objects.h | 12 +
local-fetch.c | 8 +-
log-tree.c | 82 +-
merge-base.c | 2 +-
merge-file.c | 2 +-
merge-index.c | 5 +-
merge-recursive.c | 1351 ++++++
merge-tree.c | 10 +-
mktag.c | 2 +-
mktree.c | 5 +-
object-refs.c | 11 +-
object.c | 6 +-
object.h | 11 -
pack-check.c | 25 +-
pack-redundant.c | 18 +-
pager.c | 4 +-
patch-id.c | 2 +-
path-list.c | 5 +-
path.c | 10 +-
peek-remote.c | 5 +-
perl/.gitignore | 4 +
perl/Git.pm | 837 ++++
perl/Makefile.PL | 28 +
perl/private-Error.pm | 827 ++++
quote.c | 61 +
quote.h | 7 +
read-cache.c | 77 +-
receive-pack.c | 28 +-
refs.c | 26 +-
revision.c | 258 +-
revision.h | 14 +-
rsh.c | 31 +-
run-command.c | 8 +-
send-pack.c | 126 +-
server-info.c | 2 +-
setup.c | 2 +
sha1_file.c | 596 ++--
sha1_name.c | 60 +-
sideband.c | 78 +
sideband.h | 13 +
ssh-fetch.c | 10 +-
ssh-upload.c | 4 +-
t/t1200-tutorial.sh | 2 +-
t/t1400-update-ref.sh | 86 +-
t/t3200-branch.sh | 12 +
t/t3403-rebase-skip.sh | 4 +-
t/t3700-add.sh | 22 +
t/t4015-diff-whitespace.sh | 122 +
t/t4103-apply-binary.sh | 4 +-
t/t4104-apply-boundary.sh | 115 +
t/t4116-apply-reverse.sh | 85 +
t/t4117-apply-reject.sh | 157 +
t/t5400-send-pack.sh | 14 +
t/t5510-fetch.sh | 69 +
t/t5600-clone-fail-cleanup.sh | 6 +
t/t5710-info-alternate.sh | 2 +
t/t6001-rev-list-graft.sh | 113 +
t/t7002-grep.sh | 31 +-
t/t7201-co.sh | 9 +
t/test-lib.sh | 17 +-
trace.c | 150 +
tree-diff.c | 15 +-
tree-walk.c | 4 +-
tree.c | 5 +-
builtin-read-tree.c => unpack-trees.c | 474 +--
unpack-trees.h | 35 +
upload-pack.c | 190 +-
write_or_die.c | 45 +
wt-status.c | 276 ++
wt-status.h | 25 +
xdiff-interface.c | 12 +-
xdiff/xutils.c | 29 +-
237 files changed, 16898 insertions(+), 8168 deletions(-)
copy Documentation/{git-tar-tree.txt => git-archive.txt} (29%)
rewrite Documentation/git-rev-list.txt (61%)
rename Documentation/{git-upload-tar.txt => git-upload-archive.txt} (30%)
rewrite Documentation/gitk.txt (37%)
create mode 100644 Documentation/technical/racy-git.txt
copy builtin-tar-tree.c => archive-tar.c (59%)
create mode 100644 archive-zip.c
create mode 100644 archive.h
create mode 100644 builtin-archive.c
rename builtin-cat-file.c => builtin-cat-file.c (0%)
rename checkout-index.c => builtin-checkout-index.c (92%)
rename builtin-count.c => builtin-count-objects.c (99%)
rename name-rev.c => builtin-name-rev.c (97%)
rename pack-objects.c => builtin-pack-objects.c (81%)
create mode 100644 builtin-runstatus.c
rename symbolic-ref.c => builtin-symbolic-ref.c (75%)
rename unpack-objects.c => builtin-unpack-objects.c (82%)
create mode 100644 builtin-upload-archive.c
delete mode 100644 builtin-upload-tar.c
rename verify-pack.c => builtin-verify-pack.c (83%)
create mode 100644 check-racy.c
create mode 100644 color.c
create mode 100644 color.h
create mode 100644 compat/inet_pton.c
rewrite configure.ac (21%)
create mode 100755 contrib/completion/git-completion.bash
rename contrib/gitview/{gitview.txt => gitview.txt} (74%)
create mode 100644 contrib/vim/README
create mode 100644 contrib/vim/syntax/gitcommit.vim
rename git-merge-recursive.py => git-merge-recursive-old.py (100%)
create mode 100644 gitweb/git-favicon.png
create mode 100644 gitweb/git-logo.png
rename gitweb/{gitweb.cgi => gitweb.perl} (30%)
create mode 100644 grep.c
create mode 100644 grep.h
rename builtin-help.c => help.c (99%)
create mode 100644 interpolate.c
create mode 100644 interpolate.h
copy builtin-prune.c => list-objects.c (24%)
create mode 100644 list-objects.h
create mode 100644 merge-recursive.c
create mode 100644 perl/.gitignore
create mode 100644 perl/Git.pm
create mode 100644 perl/Makefile.PL
create mode 100644 perl/private-Error.pm
create mode 100644 sideband.c
create mode 100644 sideband.h
create mode 100755 t/t4015-diff-whitespace.sh
create mode 100755 t/t4104-apply-boundary.sh
create mode 100755 t/t4116-apply-reverse.sh
create mode 100755 t/t4117-apply-reject.sh
create mode 100755 t/t5510-fetch.sh
create mode 100755 t/t6001-rev-list-graft.sh
create mode 100644 trace.c
copy builtin-read-tree.c => unpack-trees.c (62%)
create mode 100644 unpack-trees.h
create mode 100644 write_or_die.c
create mode 100644 wt-status.c
create mode 100644 wt-status.h

Alan Chandler (2):
Update the gitweb/README file to include setting the GITWEB_CONFIG environment
Fix usage string to match that given in the man page

Alex Riesen (3):
Use const for interpolate arguments
fix daemon.c compilation for NO_IPV6=1
do not discard constness in interp_set_entry value argument

Alexandre Julliard (2):
git.el: Fixed inverted "renamed from/to" message.
vc-git.el: Switch to using git-blame instead of git-annotate.

Andy Whitcroft (4):
send-pack: remove remote reference limit
send-pack: switch to using git-rev-list --stdin
svnimport: add support for parsing From: lines for author
add proper dependancies on the xdiff source

Aneesh Kumar K.V (4):
gitweb: Support for snapshot
gitweb: fix snapshot support
gitweb: Make blame and snapshot a feature.
gitweb: Fix git_blame

Art Haas (1):
Patch for http-fetch.c and older curl releases

Christian Couder (9):
Trace into open fd and refactor tracing code.
Trace into a file or an open fd and refactor tracing code.
Update GIT_TRACE documentation.
Fix memory leak in prepend_to_path (git.c).
Move add_to_string to "quote.c" and make it extern.
Fix a memory leak in "connect.c" and die if command too long.
Fix space in string " false" problem in "trace.c".
Remove empty ref directories that prevent creating a ref.
Fix tracing when GIT_TRACE is set to an empty string.

David Rientjes (18):
blame.c return cleanup
builtin-grep.c cleanup
builtin-push.c cleanup
diff.c cleanup
http-push.c cleanup
read-cache.c cleanup
Make pprint_tag void and cleans up call in cmd_cat_file.
Make show_entry void
Make checkout_all void.
Make fsck_dir void.
Make pack_objects void.
Make track_tree_refs void.
Make upload_pack void and remove conditional return.
Make sha1flush void and remove conditional return.
make inline is_null_sha1 global
use appropriate typedefs
remove unnecessary initializations
Do not use memcmp(sha1_1, sha1_2, 20) with hardcoded length.

Dennis Stosberg (12):
"test" in Solaris' /bin/sh does not support -e
Makefile fix for Solaris
Add possibility to pass CFLAGS and LDFLAGS specific to the perl subdir
Solaris has strlcpy() at least since version 8
Look for sockaddr_storage in sys/socket.h
Fix detection of ipv6 on Solaris
Fix compilation with Sun CC
gitweb: Use --git-dir parameter instead of setting $ENV{'GIT_DIR'}
gitweb: Remove forgotten call to git_to_hash
use do() instead of require() to include configuration
lock_ref_sha1_basic does not remove empty directories on BSD
Add default values for --window and --depth to the docs

Dmitry V. Levin (3):
Make count-objects, describe and merge-tree work in subdirectory
Documentation: Fix broken links
Handle invalid argc gently

Eric Wong (13):
pass DESTDIR to the generated perl/Makefile
git-svn: establish new connections on commit after fork
git-svn: recommend rebase for syncing against an SVN repo
git-svn: add the 'dcommit' command
git-svn: stop repeatedly reusing the first commit message with dcommit
git-svn: multi-init saves and reuses --tags and --branches arguments
git-svn: log command fixes
Documentation/git-svn: document some of the newer features
git-svn: -h(elp) message formatting fixes
commit: fix a segfault when displaying a commit with unreachable parents
git-svn: add a message encouraging use of SVN::* libraries
git-svn: fix commits over svn+ssh://
git-svn: reduce memory usage for large commits

Franck Bui-Huu (11):
Add a newline before appending "Signed-off-by: " line
log-tree.c: cleanup a bit append_signoff()
Add git-archive
git-archive: wire up TAR format.
git-archive: wire up ZIP format.
Add git-upload-archive
connect.c: finish_connect(): allow null pid parameter
Test return value of finish_connect()
upload-archive: monitor child communication even more carefully.
git-archive: update documentation
Add git-upload-archive to the main git man page

Haavard Skinnemoen (1):
git-send-email: Don't set author_not_sender from Cc: lines

Jakub Narebski (139):
gitweb: whitespace cleanup
gitweb: Use list for of open for running git commands, thorougly.
gitweb: simplify git_get_hash_by_path
gitweb: More explicit error messages for open "-|"
gitweb: Cleanup - chomp $line in consistent style
gitweb: Cleanup - chomp @lines in consistent style
gitweb: Add git_page_nav for later use
gitweb: Navbar refactoring - use git_page_nav to generate navigation bar
gitweb: Replace form-feed character by ^L
gitweb: Show project descriptions with utf-8 characters in project list correctly
gitweb: Add "\n" after <br/> in git_page_nav
gitweb: Pager refactoring - use git_get_paging_nav for pagination
gitweb: Remove $project from git_get_paging_nav arguments
gitweb: Headers refactoring - use git_header_div for header divs
gitweb: Remove characters entities entirely when shortening string
gitweb: Ref refactoring - use git_get_referencing for marking tagged/head commits
gitweb: Refactor generation of shortlog, tags and heads body
gitweb: do not quote path for list version of open "-|"
gitweb: Remove characters entities entirely when shortening string -- correction
gitweb: Reordering code and dividing it into categories
gitweb: Refactoring git_project_list
autoconf: Add support for setting SHELL_PATH and PERL_PATH
autoconf: Move site configuration section earlier in configure.ac
autoconf: Add support for setting PYTHON_PATH or NO_PYTHON
autoconf: Check for ll hh j z t size specifiers introduced by C99
autoconf: Typo cleanup, reordering etc.
Copy description of new build configuration variables to configure.ac
autoconf: Set NEEDS_LIBICONV unconditionally if there is no iconv in libc
gitweb: Separate input validation and dispatch, add comment about opml action
gitweb: die_error first (optional) parameter is HTTP status
gitweb: Use undef for die_error to use default first (status) parameter value
gitweb: Don't undefine query parameter related variables before die_error
gitweb: Cleanup and uniquify error messages
gitweb: No periods for error messages
gitweb: No error messages with unescaped/unprotected user input
gitweb: PATH_INFO=/ means no project
gitweb: Inline $rss_link
gitweb: Refactor untabifying - converting tabs to spaces
gitweb: fix commitdiff for root commits
gitweb: Skip nonmatching lines in difftree output, consistently
autoconf: Unset NO_STH and NEED_STH when it is detected not needed
gitweb: Remove unused variables in git_shortlog_body and git_heads
autoconf: Add configure target to main Makefile
autoconf: Error out on --without-shell and --without-perl
autoconf: Improvements in NO_PYTHON/PYTHON_PATH handling
autoconf: Move variables which we always set to config.mak.in
autoconf: It is --without-python, not --no-python
autoconf: Add support for setting CURLDIR, OPENSSLDIR, EXPATDIR
gitweb: Whitespace cleanup - tabs are for indent, spaces are for align
gitweb: Great subroutines renaming
gitweb: Separate ref parsing in git_get_refs_list into parse_ref
gitweb: Refactor printing shortened title in git_shortlog_body and git_tags_body
gitweb: Separate main part of git_history into git_history_body
gitweb: Separate finding project owner into git_get_project_owner
gitweb: Change appereance of marker of refs pointing to given object
gitweb: Skip comments in mime.types like file
gitweb: True fix: Support for the standard mime.types map in gitweb
gitweb: Separate printing difftree in git_commit into git_difftree_body
gitweb: Show project's git URL on summary page
gitweb: Add support for per project git URLs
gitweb: Uniquify version info output, add meta generator in page header
gitweb: Refactor printing commit message
gitweb: Added parse_difftree_raw_line function for later use
gitweb: Use parse_difftree_raw_line in git_difftree_body
gitweb: bugfix: a.list formatting regression
gitweb: Replace some presentational HTML by CSS
gitweb: Whitespace cleanup: realign, reindent
gitweb: Use underscore instead of hyphen to separate words in HTTP headers names
gitweb: Route rest of action subroutines through %actions
gitweb: Use here-doc
gitweb: Drop the href() params which keys are not in %mapping
gitweb: Sort CGI parameters returned by href()
gitweb: Use git-diff-tree patch output for commitdiff
gitweb: Show information about incomplete lines in commitdiff
gitweb: Remove invalid comment in format_diff_line
gitweb: Streamify patch output in git_commitdiff
gitweb: Add git_get_{following,preceding}_references functions
gitweb: Faster return from git_get_preceding_references if possible
gitweb: Add git_get_rev_name_tags function
gitweb: Use git_get_name_rev_tags for commitdiff_plain X-Git-Tag: header
gitweb: Add support for hash_parent_base parameter for blobdiffs
gitweb: Allow for pre-parsed difftree info in git_patchset_body
gitweb: Parse two-line from-file/to-file diff header in git_patchset_body
gitweb: Add invisible hyperlink to from-file/to-file diff header
gitweb: Always display link to blobdiff_plain in git_blobdiff
gitweb: Change here-doc back for style consistency in git_blobdiff
gitweb: Use git-diff-tree or git-diff patch output for blobdiff
gitweb: git_blobdiff_plain is git_blobdiff('plain')
gitweb: Remove git_diff_print subroutine
gitweb: Remove creating directory for temporary files
gitweb: git_annotate didn't expect negative numeric timezone
gitweb: Remove workaround for git-diff bug fixed in f82cd3c
gitweb: Improve comments about gitweb features configuration
gitweb: blobs defined by non-textual hash ids can be cached
gitweb: Fix typo in git_difftree_body
gitweb: Fix typo in git_patchset_body
gitweb: Remove unused git_get_{preceding,following}_references
gitweb: Remove git_to_hash function
gitweb: Use @diff_opts, default ('M'), as git-diff and git-diff-tree paramete
gitweb: Make git_print_log generic; git_print_simplified_log uses it
gitweb: Do not remove signoff lines in git_print_simplified_log
gitweb: Add author information to commitdiff view
gitweb: git_print_log: signoff line is non-empty line
gitweb: Add diff tree, with links to patches, to commitdiff view
gitweb: Add local time and timezone to git_print_authorship
gitweb: Move git-ls-tree output parsing to parse_ls_tree_line
gitweb: Separate printing of git_tree row into git_print_tree_entry
gitweb: Extend parse_difftree_raw_line to save commit info
gitweb: Change the name of diff to parent link in "commit" view to "diff
gitweb: Add GIT favicon, assuming image/png type
gitweb: Correct typo: '==' instead of 'eq' in git_difftree_body
gitweb: Divide page path into directories -- path's "breadcrumbs"
autoconf: Add -liconv to LIBS when NEEDS_LIBICONV
autoconf: Check for subprocess.py
autoconf: Quote AC_CACHE_CHECK arguments
autoconf: Fix copy'n'paste error
autoconf: Set NO_ICONV if iconv is found neither in libc, nor in libiconv
autoconf: Add support for setting NO_ICONV and ICONVDIR
autoconf: Add config.cache to .gitignore
gitweb: Make pickaxe search a feature
gitweb: Paginate history output
gitweb: Use File::Find::find in git_get_projects_list
gitweb: Do not parse refs by hand, use git-peek-remote instead
gitweb: Add git_project_index for generating index.aux
gitweb: Allow for href() to be used for links without project param
gitweb: Add link to "project_index" view to "project_list" page
gitweb: Fix mimetype_guess_file for files with multiple extensions
gitweb: Even more support for PATH_INFO based URLs
gitweb: Require project for almost all actions
gitweb: Always use git-peek-remote in git_get_references
gitweb: Make git_get_refs_list do work of git_get_references
gitweb: Fix thinko in git_tags and git_heads
gitweb: Make git_get_hash_by_path check type if provided
gitweb: Strip trailing slashes from $path in git_get_hash_by_path
gitweb: Use "return" instead of "return undef" for some subs
gitweb: Split validate_input into validate_pathname and validate_refname
gitweb: Add git_url subroutine, and use it to quote full URLs
gitweb: Quote filename in HTTP Content-Disposition: header
gitweb: Cleanup Git logo and Git logo target generation

Jeff King (9):
gitweb: optionally read config from GITWEB_CONFIG
diff: support custom callbacks for output
Move color option parsing out of diff.c and into color.[ch]
git-commit.sh: convert run_status to a C builtin
git-status: document colorization config options
contrib/vim: add syntax highlighting file for commits
wt-status: remove extraneous newline from 'deleted:' output
rev-list: fix segfault with --{author,committer,grep}
git-repack: allow git-repack to run in subdirectory

Johannes Schindelin (38):
Git.xs: older perl do not know const char *
Status update on merge-recursive in C
Cumulative update of merge-recursive in C
merge-recur: Convert variable names to lower_case
merge-recur: Get rid of debug code
merge-recur: Remove dead code
merge-recur: Fix compiler warning with -pedantic
merge-recur: Cleanup last mixedCase variables...
merge-recur: Explain why sha_eq() and struct stage_data cannot go
merge-recur: fix thinko in unique_path()
read-trees: refactor the unpack_trees() part
read-tree: move merge functions to the library
merge-recur: use the unpack_trees() interface instead of exec()ing read-tree
merge-recur: virtual commits shall never be parsed
merge-recursive: fix rename handling
http-push: avoid fork() by calling merge_bases() directly
merge-recur: do not call git-write-tree
merge-recur: do not setenv("GIT_INDEX_FILE")
merge-recur: if there is no common ancestor, fake empty one
merge-recur: try to merge older merge bases first
merge-recur: do not die unnecessarily
discard_cache(): discard index, even if no file was mmap()ed
Add the --color-words option to the diff options family
builtin-mv: readability patch
unpack-objects: remove unused variable "eof"
Makefile: fix typo
Remove uneeded #include
fmt-merge-msg: fix off-by-one bug
Teach runstatus about --untracked
add receive.denyNonFastforwards config variable
receive-pack: plug memory leak in fast-forward checking code.
Document receive.denyNonFastforwards
runstatus: do not recurse into subdirectories if not needed
daemon: default to 256 for HOST_NAME_MAX if it is not defined
diff --stat: ensure at least one '-' for deletions, and one '+' for additions
diff: fix 2 whitespace issues
cvsserver: Show correct letters for modified, removed and added files
cvsserver: fix "cvs diff" in a subdirectory

Jon Loeliger (3):
Add virtualization support to git-daemon
Cleaned up git-daemon virtual hosting support.
Removed memory leaks from interpolation table uses.

Jonas Fonseca (21):
git-apply(1): document missing options and improve existing ones
git-ls-remote(1): document --upload-pack
git-blame(1): mention options in the synopsis and advertise pickaxe
gitk(1): expand the manpage to look less like a template
git(7): put the synopsis in a verse style paragraph
gitview.txt: improve asciidoc markup
git-svn(1): improve asciidoc markup
describe: fix off-by-one error in --abbrev=40 handling
Use PATH_MAX instead of MAXPATHLEN
Use xrealloc instead of realloc
Use fstat instead of fseek
Use xcalloc instead of calloc
Add --relative-date option to the revision interface
git(7): move gitk(1) to the list of porcelain commands
Use xmalloc instead of malloc
Include config.mak.autogen in the doc Makefile
git-rev-list(1): group options; reformat; document more options
git-apply(1): document --unidiff-zero
git-repack(1): document --window and --depth
Fix trivial typos and inconsistencies in hooks documentation
gitk(1): mention --all

Junio C Hamano (139):
Perl interface: add build-time configuration to allow building with -fPIC
Perl interface: make testsuite work again.
perl: fix make clean
Git.pm: tentative fix to test the freshly built Git.pm
Perly Git: arrange include path settings properly.
Makefile: Set USE_PIC on x86-64
Perly git: work around buggy make implementations.
Git.pm: clean generated files.
Perly Git: make sure we do test the freshly built one.
INSTALL: a tip for running after building but without installing.
Work around sed and make interactions on the backslash at the end of line.
upload-pack: use object pointer not copy of sha1 to keep track of has/needs.
upload-pack: lift MAX_NEEDS and MAX_HAS limitation
recur vs recursive: help testing without touching too many stuff.
sha1_file.c: expose map_sha1_file() interface.
pack-objects: reuse deflated data from new-style loose objects.
unpack-objects: read configuration data upon startup.
Makefile: git-merge-recur depends on xdiff libraries.
gitweb: There can be more than two levels of subdirectories
gitweb: an obvious cut and paste error.
gitweb: fix use of uninitialized value.
gitweb: when showing history of a tree, show tree link not blob
gitweb: avoid undefined value warning in print_page_path
gitweb/README: do not bug Kay with gitweb questions anymore
Makefile: gitweb/gitweb.cgi is now generated.
gitweb: do not use @@FOO@@ for replaced tokens
.gitignore: git-merge-recur is a built file.
Make git-checkout-index a builtin
builtins: Makefile clean-up
git.c: Rename NEEDS_PREFIX to RUN_SETUP
autoconf: fix NEEDS_SSL_WITH_CRYPTO
autoconf: NO_IPV6
Racy git: avoid having to be always too careful
read-cache: tweak racy-git delay logic
autoconf: clean temporary file mak.append
git-grep: show pathnames relative to the current directory
upload-pack: minor clean-up in multi-ack logic
Fix type of combine-diff.c::show_patch_diff()
Remove combine-diff.c::uninteresting()
t4116 apply --reverse test
git-apply --reverse: simplify reverse option.
git-apply --binary: clean up and prepare for --reverse
avoid nanosleep(2)
Documentation/technical/racy-git.txt
Add check program "git-check-racy"
Remove the "delay writing to avoid runtime penalty of racy-git avoidance"
builtin-grep: remove unused debugging cruft.
builtin-apply --reverse: two bugfixes.
diff.c: make binary patch reversible.
apply --reverse: tie it all together.
git-apply --reject
git-apply --reject: send rejects to .rej files.
git-apply --verbose
apply --reject: count hunks starting from 1, not 0
Convert memset(hash,0,20) to hashclr(hash).
hashcpy/hashcmp remaining bits.
builtin-grep.c: remove unused debugging piece.
update-index -g
git-apply --reject: finishing touches.
free(NULL) is perfectly valid.
daemon: prepare for multiple services.
daemon: add upload-tar service.
multi-service daemon: documentation
t5710: fix two thinkos.
Constness tightening for move/link_temp_to_file()
consolidate two copies of new style object header parsing code.
pack-objects: re-validate data we copy from elsewhere.
Revert "Convert git-annotate to use Git.pm"
Revert "Git.pm: Introduce fast get_object() method"
Revert "Make it possible to set up libgit directly (instead of from the environment)"
pack-objects: fix thinko in revalidate code
more lightweight revalidation while reusing deflated stream in packing
unpack-objects desperately salvages objects from a corrupt pack
revision.c: allow injecting revision parameters after setup_revisions().
Teach rev-list an option to read revs from the standard input.
Revert "daemon: add upload-tar service."
Make apply --binary a no-op.
diff --binary generates full index on binary files.
Separate object listing routines out of rev-list
pack-objects: run rev-list equivalent internally.
pack-objects: further work on internal rev-list logic.
pack-objects --unpacked=<existing pack> option.
get_sha1_hex() micro-optimization
archive: allow remote to have more formats than we understand.
Move sideband client side support into reusable form.
Move sideband server side support into reusable form.
archive: force line buffered output to stderr
Add --verbose to git-archive
Teach --exec to git-archive --remote
Prepare larger packet buffer for upload-pack protocol.
Add sideband status report to git-archive protocol
upload-archive: monitor child communication more carefully.
builtin-archive.c: rename remote_request() to extract_remote_arg()
pack-objects: document --revs, --unpacked and --all.
http-fetch: fix alternates handling.
unpack-objects -r: call it "recover".
Document git-grep -[Hh]
Define fallback PATH_MAX on systems that do not define one in <limits.h>
Fix git-am safety checks
http-fetch.c: consolidate code to detect missing fetch target
Add ftp:// protocol support for git-http-fetch
t1400: make test debuggable.
apply --unidiff-zero: loosen sanity checks for --unidiff=0 patches
builtin-grep: make pieces of it available as library.
revision traversal: prepare for commit log match.
revision traversal: --author, --committer, and --grep.
repack: use only pack-objects, not rev-list.
Update grep internal for grepping only in head/body
git log: Unify header_filter and message_filter into one.
Make hexval() available to others.
sha1_name.c: understand "describe" output as a valid object name
diff.c: second war on whitespace.
git-apply: second war on whitespace.
Add t5510 to test per branch configuration affecting git-fetch.
Remove upload-tar and make git-tar-tree a thin wrapper to git-archive
Deprecate merge-recursive.py
diff --stat: allow custom diffstat output width.
diff --stat: color output.
An illustration of rev-list --parents --pretty=raw
grep: free expressions and patterns when done.
grep: fix --fixed-strings combined with expression.
Contributed bash completion support for core Git tools.
git-diff -B output fix.
Remove -fPIC which was only needed for Git.xs
GIT 1.4.3-rc1
Makefile: install and clean merge-recur, still.
escape tilde in Documentation/git-rev-parse.txt
tar-tree deprecation: we eat our own dog food.
gitweb: Make the Git logo link target to point to the homepage
git-send-email: avoid uninitialized variable warning.
cherry-pick: make -r the default
Add WEBDAV timeout to http-fetch.
Fix git-revert
git-fetch --update-head-ok typofix
git-pull: we say commit X, not X commit.
git.spec.in: perl subpackage is installed in perl_vendorlib not vendorarch
apply --numstat -z: line termination fix.
t4015: work-around here document problem on Cygwin.
Revert "move pack creation to version 3"

Linus Torvalds (10):
Relative timestamps in git log
git-fsck-objects: lacking default references should not be fatal
Fix git-fsck-objects SIGSEGV/divide-by-zero
Add "-h/-H" parsing to "git grep"
Allow multiple "git_path()" uses
git-log --author and --committer are not left-anchored by default
Clean up approxidate() in preparation for fixes
Fix approxidate() to understand more extended numbers
diff --stat=width[,name-width]: allow custom diffstat output width.
Fix approxidate() to understand 12:34 AM/PM are 00:34 and 12:34

Liu Yubao (1):
Fix duplicate xmalloc in builtin-add

Luben Tuikov (22):
gitweb: git_tree displays blame based on repository config
gitweb: bugfix: git_commit and git_commitdiff parents
gitweb: blame table row no highlight fix
gitweb: bugfix: commitdiff regression
gitweb: bugfix: git_print_page_path() needs the hash base
gitweb: tree view: eliminate redundant "blob"
gitweb: Remove redundant "tree" link
gitweb: extend blame to show links to diff and previous
Revert "gitweb: extend blame to show links to diff and previous"
gitweb: Remove excessively redundant entries from git_difftree_body
gitweb: Add history and blame to git_difftree_body()
gitweb: "alternate" starts with shade (i.e. 1)
gitweb: Remove redundant "commit" link from shortlog
gitweb: Factor out gitweb_have_snapshot()
gitweb: Add snapshot to shortlog
gitweb: Don't use quotemeta on internally generated strings
gitweb: Remove redundant "commit" from history
gitweb: History: blob and tree are first, then commitdiff, etc
gitweb: tree view: hash_base and hash are now context sensitive
gitweb: Escape ESCAPE (\e) character
gitweb: Do not print "log" and "shortlog" redundantly in commit view
gitweb: blame: Minimize vertical table row padding

Markus Amsler (1):
git-imap-send: Strip smtp From_ header from imap message.

Martin Langhoff (1):
git-repack: create new packs inside $GIT_DIR, not cwd

Martin Waitz (16):
gitweb: fill in gitweb configuration by Makefile
gitweb: use out-of-line GIT logo.
gitweb: provide function to format the URL for an action link.
gitweb: consolidate action URL generation.
gitweb: continue consolidation of URL generation.
gitweb: support for "fp" parameter.
gitweb: support for / as home_link.
gitweb: fix project list if PATH_INFO=="/".
gitweb: more support for PATH_INFO based URLs
gitweb: fix uninitialized variable warning.
gitweb: fix display of trees via PATH_INFO.
gitweb: document webserver configuration for common gitweb/repo URLs.
git-commit: cleanup unused function.
git-commit: fix coding style.
test-lib: separate individual test better in verbose mode.
paginate git-diff by default

Matthias Kestenholz (6):
Make git-name-rev a builtin
Make git-pack-objects a builtin
Make git-unpack-objects a builtin
Make git-symbolic-ref a builtin
Add gitweb.cgi to .gitignore
Check if pack directory exists prior to descending into it

Matthias Lederhofer (12):
pager: environment variable GIT_PAGER to override PAGER
gitweb: use a hash to lookup the sub for an action
gitweb: require $ENV{'GITWEB_CONFIG'}
gitweb: check if HTTP_ACCEPT is really set
gitweb: fix commitdiff_plain for root commits
gitweb: fix $project usage
gitweb: do not use 'No such directory' error message
gitweb: export options
gitweb: fix warnings in PATH_INFO code and add export_ok/strict_export
gitweb fix validating pg (page) parameter
format-patch: use cwd as default output directory
git-format-patch: fix bug using -o in subdirectories

Nicolas Pitre (4):
move pack creation to version 3
many cleanups to sha1_file.c
add commit count options to git-shortlog
atomic write for sideband remote messages

Paul Mackerras (10):
gitk: Minor cleanups
gitk: Recompute ancestor/descendent heads/tags when rereading refs
gitk: Add a row context-menu item for creating a new branch
gitk: Add a context menu for heads
gitk: Fix a couple of buglets in the branch head menu items
gitk: Add a menu item for cherry-picking commits
gitk: Update preceding/following tag info when creating a tag
gitk: Improve responsiveness while reading and layout out the graph
gitk: Fix some bugs in the new cherry-picking code
diff-index --cc shows a 3-way diff between HEAD, index and working tree.

Pavel Roskin (3):
Fix probing for already installed Error.pm
Delete manuals if compiling without docs
Make perl interface a separate package

Petr Baudis (48):
Introduce Git.pm (v4)
Git.pm: Implement Git::exec_path()
Git.pm: Call external commands using execv_git_cmd()
Git.pm: Implement Git::version()
Add Error.pm to the distribution
Git.pm: Better error handling
Git.pm: Handle failed commands' output
Git.pm: Enhance the command_pipe() mechanism
Git.pm: Implement options for the command interface
Git.pm: Add support for subdirectories inside of working copies
Convert git-mv to use Git.pm
Git.pm: assorted build related fixes.
Git.pm: Try to support ActiveState output pipe
Git.pm: Swap hash_object() parameters
Git.pm: Fix Git->repository("/somewhere/totally/elsewhere")
Git.pm: Support for perl/ being built by a different compiler
Git.pm: Remove PerlIO usage from Git.xs
Git.pm: Avoid ppport.h
Git.pm: Don't #define around die
Use $GITPERLLIB instead of $RUNNING_GIT_TESTS and centralize @INC munging
Git.pm: Add config() method
Convert git-send-email to use Git.pm
Git.pm: Introduce ident() and ident_person() methods
Make it possible to set up libgit directly (instead of from the environment)
Git.pm: Introduce fast get_object() method
Convert git-annotate to use Git.pm
Eliminate Scalar::Util usage from private-Error.pm
Fix showing of path in tree view
gitweb: Link (HEAD) tree for each project from projects list
gitweb: More per-view navigation bar links
gitweb: Link to tree instead of snapshot in shortlog
gitweb: Link to latest tree from the head line in heads list
gitweb: Link to associated tree from a particular log item in full log view
gitweb: Rename "plain" labels to "raw"
gitweb: Relabel "head" as "HEAD"
Make path in tree view look nicer
gitweb: Fix tree link associated with each commit log entry.
gitweb: Fix @git_base_url_list usage
Fix snapshot link in tree view
Git.pm: Kill Git.xs for now
Deprecate git-resolve.sh
gitweb: Consolidate escaping/validation of query string
gitweb: fix over-eager application of esc_html().
Show snapshot link in shortlog only if have_snapsho
gitweb: Separate (new) and (deleted) in commitdiff by a space
gitweb: Handle commits with empty commit messages more reasonably
gitweb: [commit view] Do not suppress commitdiff link in root commit
svnimport: Fix broken tags being generated

Pierre Habouzit (7):
Fix a comparison bug in diff-delta.c
avoid to use error that shadows the function name, use err instead.
git_dir holds pointers to local strings, hence MUST be const.
missing 'static' keywords
remove ugly shadowing of loop indexes in subloops.
use name[len] in switch directly, instead of creating a shadowed variable.
n is in fact unused, and is later shadowed.

Randal L. Schwartz (1):
builtin-upload-archive.c broken on openbsd

Rene Scharfe (21):
git-verify-pack: make builtin
Axe the last ent
Add write_or_die(), a helper function
Add git-zip-tree
git-cherry: remove unused variable
git-reset: remove unused variable
Add git-zip-tree to .gitignore
git-archive: make compression level of ZIP archives configurable
Use xstrdup instead of strdup in builtin-{tar,zip}-tree.c
git-archive: inline default_parse_extra()
git-tar-tree: devolve git-tar-tree into a wrapper for git-archive
Remove git-zip-tree
Rename builtin-zip-tree.c to archive-zip.c
git-tar-tree: Remove duplicate git_config() call
git-tar-tree: Move code for git-archive --format=tar to archive-tar.c
git-tar-tree: don't RUN_SETUP
Documentation: add missing second colons and remove a typo
Add hash_sha1_file()
Make write_sha1_file_prepare() static
Make write_sha1_file_prepare() void
Replace open-coded version of hash_sha1_file()

Robin Rosenberg (3):
Quote arguments to tr in test-lib
Make cvsexportcommit remove files.
Error in test description of t1200-tutorial

Santi Béjar (4):
Fetch: default remote repository from branch properties
fetch: get the remote branches to merge from the branch properties
Add test for the default merges in fetch.
fetch: Reset remote refs list each time fetch_main is called

Sasha Khapyorsky (3):
Trivial support for cloning and fetching via ftp://.
git-svnimport: Parse log message for Signed-off-by: lines
http/ftp: optionally ask curl to not use EPSV command

Sergey Vlasov (2):
Documentation: Fix howto/revert-branch-rebase.html generation
git-svn: Fix fetch --no-ignore-externals with GIT_SVN_NO_LIB=1

Shawn Pearce (15):
Verify we know how to read a pack before trying to using it.
Remove unnecessary forward declaration of unpack_entry.
Convert memcpy(a,b,20) to hashcpy(a,b).
Convert memcpy(a,b,20) to hashcpy(a,b).
Reorganize/rename unpack_non_delta_entry to unpack_compressed_entry.
Reuse compression code in unpack_compressed_entry.
Cleanup unpack_entry_gently and friends to use type_name array.
Cleanup unpack_object_header to use only offsets.
Convert unpack_entry_gently and friends to use offsets.
Replace uses of strdup with xstrdup.
Allow 'svn fetch' on '(no date)' revisions in Subversion.
Allow '(no author)' in git-svn's authors file.
Ignore executable bit when adding files if filemode=0.
Allow git-checkout when on a non-existant branch.
Corrected copy-and-paste thinko in ignore executable bit test case.

Tilman Sauerbeck (2):
Indentation fix.
Added support for dropping privileges to git-daemon.

Timo Hirvonen (2):
--name-only, --name-status, --check and -s are mutually exclusive
Remove awkward compatibility warts

Ville Skyttä (1):
Be nicer if git executable is not installed

Yasushi SHOJI (4):
gitweb: configurable home link string
gitweb: Decode long title for link tooltips
gitweb: refactor decode() for utf8 conversion
clone: the given repository dir should be relative to $PWD

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/