[ANNOUNCE] GIT 1.4.2

From: Junio C Hamano
Date: Sat Aug 12 2006 - 23:17:56 EST



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

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

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

I do not currently have access to i386 RH boxes, so there is
only x86_64 RPM in the RPMS directory mentioned above.

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

Changes since v1.4.1.1 are as follows:

A Large Angry SCM:
Additional merge-base tests (revised)

Alex Riesen:
Do not use perl in git-commit.sh
Trivial path optimization test

Alexandre Julliard:
git.el: Run git-rerere on commits if the rr-cache directory exists.
git.el: Prepend a slash to the file name when adding to .gitignore.
git.el: Try to reuse an existing buffer when running git-status.
git.el: Put the git customize group in the 'tools' parent group.
show-branch: Fix another performance problem.

Alp Toker:
Fix some doubled word typos
Fix some doubled word typos
Fix typos involving the word 'commit'
typofix (git-name-rev documentation)
git-send-email: Remove redundant Reply-To header
gitweb: Send XHTML as 'application/xhtml+xml' where possible
gitweb: Include a site name in page titles
gitweb: Make command invocations go through the git wrapper
documentation (urls.txt) typofix

Daniel Drake:
gitweb: escape tag comments

Dennis Stosberg:
gitweb: Declare global variables with "our"
gitweb: Declare global variables with "our"

Eric Wong:
Add git-instaweb, instantly browse the working repo with gitweb
instaweb: fix unportable ';' usage in sed
t8001-annotate: fix a bash-ism in this test
git-svn: avoid fetching files outside of the URL we're tracking
git-svn: migrate out of contrib
builtin-log: respect diff configuration options
diff.c: respect diff.renames config option
templates/hooks--update: replace diffstat calls with git diff --stat
git-svn: fix --file/-F option in commit-diff
tests: Set EDITOR=: and VISUAL=: globally
git-fetch: fix a bashism (==)
git-svn: don't check for migrations/upgrades on commit-diff
typechange tests for git apply (currently failing)
git-svn: fix fetching new directories copies when using SVN:: libs
git-svn: correctly kill keyword expansion without munging EOLs
git-svn: bugfix: allow SVN:: lib users to track the root of the repository
git-svn: split the path from the url correctly with limited perms

Gerrit Pape:
Build on Debian GNU/kFreeBSD

Jakub Narebski:
Allow INSTALL, bindir, mandir to be set in main Makefile
Rename man1 and man7 variables to man1dir and man7dir
autoconf: Use autoconf to write installation directories to config.mak.autogen
send-email: format 2822 datestring ourselves.
Teach make clean about configure and autoconf
Copy description of build configuration variables to configure.ac
autoconf: Preparing the way for autodetection
autoconf: Checks for typedefs, structures, and compiler characteristics.
autoconf: Checks for some library functions.
autoconf: Checks for libraries
autoconf: Checks for some programs
configure.ac vertical whitespace usage cleanup
Wrap long lines in docstrings in contrib/emacs/git.el
Display help for Git mode after pressing `h' or `?' in *git-status*

Jeff King:
pack-objects: check pack.window for default window size
Colorize 'commit' lines in log ui
git-push: allow -f as an alias for --force
git-push: remove obsolete git-push.sh
Documentation: convert uses of git-link macro to gitlink
git-annotate: remove extraneous debugging line
git-push: allow pushing from subdirectories

Joachim B Haga:
Make zlib compression level configurable, and change default.

Joachim Berdal Haga:
core.compression documentation formatting fix.

Johannes Schindelin:
refactor merge_bases() as preparation to libify merge-base
move get_merge_bases() to core lib.
Makefile: replace ugly and unportable sed invocation
Make git-fmt-merge-msg a builtin
Makefile: export NO_SVN_TESTS
Close the index file between writing and committing
Fix linking for not-so-clever linkers.
Fix t4114 on cygwin
Always reset the color _before_ printing out the newline
cvsserver: suppress warnings
cvsserver: avoid warning about active db handles
Allow an alias to start with "-p"
git wrapper: add --git-dir=<path> and --bare options
git-instaweb: some Apache have mod_cgi builtin
git-instaweb: respect bindir from Makefile
gitweb: fix two warnings
t7001: add test for git-mv dir1 dir2/
git-cvsserver: support multiline commit messages
Extract helper bits from c-merge-recursive work
Make git-mv a builtin
builtin git-mv: support moving directories
instaweb: Be more clear if httpd or the browser fail
cvsserver: imitate git-update-ref when committing
Makefile: ssh-pull.o depends on ssh-fetch.c
Teach git-apply about '-R'
Fix http-fetch
tar-tree: illustrate an obscure feature better
Fix crash when GIT_DIR is invalid

Jonas Fonseca:
Documentation/urls.txt: Use substitution to escape square brackets
Update git-init-db(1) and documentation of core.sharedRepository

Josef Weidendorfer:
Extend testing git-mv for renaming of subdirectories

Josh Triplett:
git-format-patch: Make the second and subsequent mails replies to the first
Add option to enable threading headers
Add option to set initial In-Reply-To/References

Junio C Hamano:
Makefile: add framework to verify and bench sha1 implementations.
test-sha1: test hashing large buffer
t4013: add tests for diff/log family output options.
t4013: add more tests around -c and --cc
Fix some more diff options changes.
t4013 test updates for new output code.
combine-diff.c: type sanity.
format-patch: fix diff format option implementation
t4013: add format-patch tests.
t4013: note improvements brought by the new output code.
gitweb: optimize per-file history generation
gitweb: optimize per-file history generation
t4013: add "diff" UI program tests.
builtin-diff: turn recursive on when defaulting to --patch format.
commit.c: do not redefine UNINTERESTING bit.
get_merge_bases: clean up even when there is no common commit.
revert clear-commit-marks for now.
boolean: accept yes and no as well
send-email: do not barf when Term::ReadLine does not like your terminal
t6200: fmt-merge-msg test.
git-grep: fix parsing of pathspec separator '--'
git-grep: fix exit code when we use external grep.
git-grep: use a bit more specific error messages.
Re-fix clear_commit_marks().
git-grep: boolean expression on pattern matching.
git-reset: complain and exit upon seeing an unknown parameter.
mailinfo: assume input is latin-1 on the header as we do for the body
diffcore-rename: try matching up renames without populating filespec first.
builtin-rev-parse.c: constness tightening
show-branch: match documentation and usage
rev-parse documentation: talk about range notation.
git-svn: migrate out of contrib (follow-up)
diff.c: --no-color to defeat diff.color configuration.
Update diff-options and config documentation.
git log -p --merge [[--] paths...]
colored diff: diff.color = auto fix
diff: do not use configuration magic at the core-level
"git -p cmd" to page anywhere
merge-base: update the clean-up postprocessing
fmt-merge-msg fix
Fix grammatical error in git-revert
git-repack: avoid redirecting stderr into git-pack-objects
test-lib: unset GIT_TRACE
t4013 diff format tests update
Adjust t4013 tests to corrected format-patch.
Documentation: Fix ssh://[user@]host.xz URL
fetch/clone: check return status from ls-remote
builtin-prune.c: forgot TYPE => OBJ changes.
Documentation/Makefile: product depends on asciidoc.conf
builtin-log: typefix for recent format-patch changes.
show-branch: fix performance problem.
checkout -f failed to check out a file if an existing directory interfered.
apply: check D/F conflicts more carefully.
apply: split out removal and creation into different phases.
apply: handle type-changing patch correctly.
git-diff A...B to (usually) mean "git-diff `git-merge-base A B` B"
git-fetch: fix --keep vs --thin
unpack-objects: remove stale and confusing comment
t4112: simplify the test and remove unneeded working tree file.
lost-found: use fsck-objects --full
git-reset: detect update-ref error and report it.
log and diff family: honor config even from subdirectories
git-apply -R: binary patches are irreversible for now.
t4103: fix binary patch application test.
git-checkout: allow "checkout HEAD -- path"
Builtins: control the use of pager from the command table.
fetch/clone: mark messages from remote side stand out.
Cygwin needs NO_C99_FORMAT???
Fix "git diff blob1 blob2" showing the diff in reverse.
read-tree: shadowed variable fix.
Add a couple of subdirectory tests.
diff.c: do not use pathname comparison to tell renames
Show both blob names from "git diff blob1 blob2"
sideband: do not use color, just say "remote:"
Documentation/git.txt: link git-svn and git-instaweb from the main page.
GIT 1.4.2-rc3
Further clean-up: usage() vs die()
Makefile: Cygwin does not seem to need NO_STRLCPY
Fix "grep -w"
debugging: XMALLOC_POISON
builtin-mv: fix use of uninitialized memory.
GIT-VERSION-GEN: adjust for ancient git
Documentation: git-status takes the same options as git-commit
Fix tutorial-2.html
check return value from diff_setup_done()
find_unique_abbrev() with len=0 should not abbreviate
make --find-copies-harder imply -C
allow diff.renamelimit to be set regardless of -M/-C
git-apply: applying a patch to make a symlink shorter.
combine-diff: use color
Fix git-diff A...B
builtin-apply: remove unused increment
git-sh-setup: do not use repo-config to test the git directory
git-am: give better diagnostics when the patch does not apply during --3way
Better error message when we are unable to lock the index file
t/t4013: fix futzing with the version string.

Linus Torvalds:
xdiff: generate "anti-diffs" aka what is common to two files
Prepare "git-merge-tree" for future work
Improved three-way blob merging code
Improve git-peek-remote
builtin "git prune"
Make the unpacked object header functions static to sha1_file.c
Remove TYPE_* constant macros and use object_type enums consistently.
sha1_file: add the ability to parse objects in "pack file format"
Call setup_git_directory() early
Call setup_git_directory() much earlier
Fix double "close()" in ce_compare_data
Fix up some fallout from "setup_git_directory()" cleanups

Luben Tuikov:
gitweb: Enable tree (directory) history display
gitweb: Enable tree (directory) history display
Add "raw" output option to blobs in "tree" view format
gitweb.cgi: Create $git_temp if it doesn't exist
gitweb.cgi: Teach "a=blob" action to know the blob/file mime type
gitweb.css: Use monospace fonts for commits and tree-diff.
gitweb.cgi: Teach git_history() to read hash from $hash_base
gitweb.cgi: Include direct link to "raw" files from "history"
gitweb.cgi: git_blame2: an alternative simple working git blame
gitweb.cgi: git_blame2: Allow back-trekking through commits
gitweb.cgi: Show "raw" head of project link even when $hash is not defined
gitweb.cgi: git_blame2: Revision blocks now have alternating colors
gitweb.cgi: Centralize printing of the page path
gitweb.cgi: git_blame2: slight optimization reading the blame lines

Lukas Sandström:
git-am: Don't accept an mbox on stdin of we already have a .dotest directory

Martin Langhoff:
cvsexportcommit - add -a (add author line) flag, cleanup warnings

Matthias Kestenholz:
Make git-prune-packed a builtin
Make git-repo-config a builtin
use declarations from builtin.h for builtin commands

Matthias Lederhofer:
GIT_TRACE: show which built-in/external commands are executed
change ent to tree in git-diff documentation
git-rev-list: add documentation for --parents, --no-merges
daemon: use a custom die routine with syslog
daemon: if one of the standard fds is missing open it to /dev/null
upload-pack: ignore write errors to stderr
daemon: new option --pid-file=<path> to store the pid
daemon: new option --detach to run git-daemon in background
Documentation about exclude/ignore files
argv created by handle_alias should be NULL terminated
upload-pack: fix timeout in create_pack_file
daemon: documentation for --reuseaddr, --detach and --pid-file
setup_git_directory_gently: do not barf when GIT_DIR is given.
git.c: allow alias expansion without a git directory
pager: config variable pager.color
git-grep: document --and, --or, --not, ( and )

Michael:
fixed variable declaration in gitk

Michael Krelin:
handle https:// protocol in git-clone

Michael S. Tsirkin:
mailinfo: accept >From in message header

Michal Rokos:
sed -e '/RE/r rfile/' needs space in 'r rfile'
Using 'perl' in *.sh

Paul Mackerras:
gitk: Allow the user to set some colors
gitk: Show the currently checked-out head in bold font

Pavel Roskin:
Assorted typo fixes
Typofix in Makefile comment.
Typofix in configure.ac comment.
Fix more typos, primarily in the code
Avoid C99 comments, use old-style C comments instead.
Quote all calls to GIT_CONF_APPEND_LINE
Set datarootdir in config.mak.in

Peter Baumann:
git-cvsexportcommit can't handle merge commits correctly

Peter Eriksen:
Substitute xmalloc()+memset(0) with xcalloc().

Petr Baudis:
Remove -d from *-fetch usage strings
Make pull() take some implicit data as explicit arguments
Make pull() support fetching multiple targets at once
Teach git-local-fetch the --stdin switch
Teach git-http-fetch the --stdin switch

Ramsay Jones:
Ensure git-clone exits with error if perl script fails.
Fix annotate test script; notice when git-annotate fails.
Fix installation of templates on ancient systems.
New tests and en-passant modifications to mktag.
Add NO_C99_FORMAT to support older compilers.
Fix header breakage due to redefining PATH_MAX.
Remove cmd_usage() routine and re-organize the help/usage code.
Fix header breakage with _XOPEN_SOURCE.
Fixup command names in some usage strings.
Replace some calls to die(usage_str) with usage(usage_str).
Allow config file to specify Signed-off-by identity in format-patch.
commit walkers: setup_ident() to record correct committer in ref-log.

Rene Scharfe:
Add get_merge_bases_clean()
Add '...' operator for revisions
Make clear_commit_marks() clean harder
Fold get_merge_bases_clean() into get_merge_bases()
rev-list: free commit_list in ... handler
git-tar-tree: fix minor memory leak
Add has_extension()
git-verify-pack: show usage when no pack was specified
git-verify-pack: more careful path handling
git-verify-pack: insist on .idx extension
git-verify-pack: get rid of while loop
git-verify-pack: free pack after use and a cleanup
git-verify-pack: buffer overrun paranoia
git-verify-pack: no need to count errors
drop length argument of has_extension

Robert Shearman:
format-patch: Generate a newline between the subject header and the message body
rebase: Fix the detection of fast-forwarding of the current branch to upstream.
rebase: Make the fast-fowarding message more user-friendly by using branch names instead of SHA1 IDs.

Rutger Nijlunsing:
http-push: Make WebDAV work with (broken?) default apache2 WebDAV module
Add Documentation/howto/setup-git-server-over-http.txt

Ryan Anderson:
annotate: Support annotation of files on other revisions.
annotate: Correct most merge following to annotate correctly.
Disable color detection during format-patch
log-tree: show_log() should respect the setting of diffopt->line_termination
annotate: Fix bug when parsing merges with differing real and logical parents.

Santi Béjar:
Teach rev-parse the ... syntax.
Defaulting fetch to origin when set in the repo-config

Sergey Vlasov:
Fix "git-fetch --tags" exit status when nothing has been changed

Shawn Pearce:
Avoid C99 initializers
Allow user.name and user.email to drive reflog entry.
Record the type of commit operation in the reflog.
Log ref changes made by git-fetch and git-pull.
Log ref changes made by git-merge and git-pull.
Log ref changes made by quiltimport.
Log ref changes made by resolve.
Make lazy mkdir more robust.
Record rebase changes as 'rebase' in the reflog.
Disable linking with Fink or DarwinPorts.
Display an error from update-ref if target ref name is invalid.

Stephan Feder:
Do not drop data from '\0' until eol in patch output
Teach --text option to diff
Teach diff -a as shorthand for --text
Add -a and --text to common diff options help
diff-options: Explain --text and -a

Timo Hirvonen:
Merge with_raw, with_stat and summary variables to output_format
Make --raw option available for all diff commands
Set default diff output format after parsing command line
DIFF_FORMAT_RAW is not default anymore
Add msg_sep to diff_options
Don't xcalloc() struct diffstat_t
whatchanged: Default to DIFF_FORMAT_RAW
Print empty line between raw, stat, summary and patch
diff-tree: Use ---\n as a message separator
log --raw: Don't descend into subdirectories by default
Fix diff-tree -s
GIT_TRACE: fix a mixed declarations and code warning
diff: Support both attributes and colors
diff: Support 256 colors

Unknown:
A better-scheduled PPC SHA-1 implementation.

Uwe Zeisberger:
Document rev-list's option --merge

Ville SkyttÃ:
Fix print-log and diff compatibility with recent vc versions

Willy Tarreau:
tar-tree: add the "tar.umask" config option

Yakov Lerner:
Mention the [user@] part in documentation of ssh:// urls.


-
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/