The latest feature release GIT 1.3.0 is available at the usual places: http://www.kernel.org/pub/software/scm/git/ git-1.3.0.tar.{gz,bz2} (tarball) RPMS/$arch/git-*-1.3.0-1.$arch.rpm (RPM) There are many fixes and enhancements all over the place, and here is only a list of notable user-visible changes in 1.3.0 since 1.2.6: - git-cvsserver (Martin Langhoff). This allows you to make your git repo accessible from CVS clients. - Annotate/blame (Ryan Anderson and Fredrik Kuivinen). These are alternate implementations of cvs annotate equivalent. One of them probably needs to be eventually retired, but for now they are kept while both of them still have room for improvements. - builtin diff generation is now truly built-in. We do not rely on GNU diff anymore (Linus and Davide Libenzi). This unfortunately makes GIT_DIFF_OPTS less useful; it can only take -u<n> or --unified=<n> and nothing else. - diff family acquired --stat, --patch-with-stat and --patch-with-raw output formats (Johannes Schindelin, Petr Baudis). - git-log command now takes diff options to act as a replacement for git-whatchanged. - rename detector was simplified and got faster (Linus and me). - clone --use-separate-remote; a repository cloned with this flag will copy the upstream branch heads under .git/remotes/origin/, not .git/heads/. You will get the default "master" branch that starts out as a copy of the upstream HEAD. - A lot lower start-up latency for git-log, even when limiting by paths (Linus). - "git-commit --amend" can be used to amend the tip commit of the current branch. - Human date parsing is a bit friendlier to our European friends by preferring dd.mm.yy format over mm.dd.yy. - contrib/ hierarchy. Things that are not purely git proper but are "around git" are shipped with git. Current piggybackers are: - Two Emacs interfaces (Alexandre Julliard) - Alternative SVN interface (Eric Wong) - Alternative repository viewer (Aneesh Kumar) ---------------------------------------------------------------- (Shortlog since v1.2.6) A Large Angry SCM: Makefile fixups. Alex Riesen: PATCH: simplify calls to git programs in git-fmt-merge-msg workaround fat/ntfs deficiencies for t3600-rm.sh (git-rm) Alexandre Julliard: Add an Emacs interface in contrib. git-format-patch: Always add a blank line between headers and body. contrib/emacs: Add an Emacs VC backend. git.el: Portability fixes for XEmacs and Emacs CVS. git.el: Set default directory before running the status mode setup hooks. git.el: Automatically update .gitignore status. git.el: Added support for Signed-off-by. git.el: Added customize support for all parameters. ls-files: Don't require exclude files to end with a newline. git.el: More robust handling of subprocess errors when returning strings. git.el: Get the default user name and email from the repository config. git.el: Added a function to diff against the other heads in a merge. Anand Kumria: git-svnimport: if a limit is specified, respect it Aneesh Kumar K.V: Add contrib/gitview from Aneesh. Add a README for gitview gitview: typofix gitview: Read tag and branch information using git ls-remote gitview: Use monospace font to draw the branch and tag name gitview: Display the lines joining commit nodes clearly. gitview: Fix DeprecationWarning gitview: Bump the rev gitview: Code cleanup gitview: Fix the graph display . gitview: Fix the encoding related bug gitview: Remove trailing white space gitview: Some window layout changes. gitview: Set the default width of graph cell gitview: Use horizontal scroll bar in the tree view gitview: pass the missing argument _show_clicked_cb. Carl Worth: git-rebase: Clarify usage statement and copy it into the actual documentation. New test to verify that when git-clone fails it cleans up the new directory. git-ls-files: Fix, document, and add test for --error-unmatch option. Add new git-rm command with documentation git-rm: Fix to properly handle files with spaces, tabs, newlines, etc. Davide Libenzi: Clean-up trivially redundant diff. xdiff: post-process hunks to make them consistent. Dennis Stosberg: Solaris 9 also wants our own unsetenv/setenv. Replace index() with strchr(). Dmitry V. Levin: git/Documentation: fix SYNOPSIS style bugs Eric W. Biederman: Implement limited context matching in git-apply. Eric Wong: Introducing contrib/git-svn. git-svn: fix revision order when XML::Simple is not loaded git-svn: ensure fetch always works chronologically. git-svn: remove files from the index before adding/updating git-svn: fix a typo in defining the --no-stop-on-copy option git-svn: allow --find-copies-harder and -l<num> to be passed on commit git-svn: Allow for more argument types for commit (from..to) git-svn: remove any need for the XML::Simple dependency git-svn: change ; to && in addremove() contrib/git-svn.txt: add a note about renamed/copied directory support git-svn: fix several corner-case and rare bugs with 'commit' contrib/git-svn: add Makefile, test, and associated ignores git-svn: 0.9.1: add --version and copyright/license (GPL v2+) information contrib/git-svn: add show-ignore command contrib/git-svn: optimize sequential commits to svn contrib/git-svn: version 0.10.0 contrib/git-svn: tell the user to not modify git-svn-HEAD directly contrib/git-svn: correct commit example in manpage contrib/git-svn: use refs/remotes/git-svn instead of git-svn-HEAD git-branch: add -r switch to list refs/remotes/* contrib/git-svn: add -b/--branch switch for branch detection contrib/git-svn: several small bug fixes and changes contrib/git-svn: strip 'git-svn-id:' when commiting to SVN contrib/git-svn: allow --authors-file to be specified contrib/git-svn: cleanup option parsing contrib/git-svn: create a more recent master if one does not exist contrib/git-svn: avoid re-reading the repository uuid, it never changes contrib/git-svn: add --id/-i=$GIT_SVN_ID command-line switch contrib/git-svn: better documenting of CLI switches send-email: accept --no-signed-off-by-cc as the documentation states contrib/git-svn: fix a copied-tree bug in an overzealous assertion contrib/git-svn: fix svn compat and fetch args contrib/git-svn: remove the --no-stop-on-copy flag contrib/git-svn: fix a harmless warning on rebuild (with old repos) fetch,parse-remote,fmt-merge-msg: refs/remotes/* support ls-tree: add --abbrev[=<n>] option ls-files: add --abbrev[=<n>] option contrib/git-svn: allow rebuild to work on non-linear remote heads send-email: use built-in time() instead of /bin/date '+%s' send-email: Change from Mail::Sendmail to Net::SMTP send-email: try to order messages in email clients more correctly send-email: lazy-load Email::Valid and make it optional contrib/git-svn: stabilize memory usage for big fetches contrib/git-svn: force GIT_DIR to an absolute path contrib/git-svn: accept configuration via repo-config contrib/git-svn: documentation updates contrib/git-svn: ensure repo-config returns a value before using it contrib/git-svn: make sure our git-svn is up-to-date for test contrib/git-svn: handle array values correctly Fernando J. Pereda: Allow building Git in systems without iconv Francis Daly: AsciiDoc fix for tutorial Tweak asciidoc output to work with broken docbook-xsl Fix multi-paragraph list items in OPTIONS section Format tweaks for asciidoc. Tweaks to make asciidoc play nice. Fredrik Kuivinen: Add git-blame, a tool for assigning blame. git-blame, take 2 git-blame: Make the output human readable git-blame: Use the same tests for git-blame as for git-annotate Fix some inconsistencies in the docs Remove trailing dot after short description Nicer output from 'git' Make it possible to not clobber object.util in sort_in_topological_order (take 2) rev-lib: Make it easy to do rename tracking (take 2) blame: Rename detection (take 2) blame: Nicer output blame: Fix git-blame <directory> Makefile: Add TAGS and tags targets Herbert Valerio Riedel: git-svnimport symlink support J. Bruce Fields: Document git-rebase behavior on conflicts. Documentation: revise top of git man page Jason Riedy: Fix typo in git-rebase.sh. Add ALL_LDFLAGS to the git target. Jeff Muizelaar: cosmetics: change from 'See-Also' to 'See Also' documentation: add 'see also' sections to git-rm and git-add Jim Radford: fix repacking with lots of tags Johannes Schindelin: Fix cpio call Optionally support old diffs Support Irix Optionally work without python Fixes for ancient versions of GNU make avoid makefile override warning Really honour NO_PYTHON Fix "gmake -j" Use Ryan's git-annotate instead of jsannotate Warn about invalid refs Fix test case for some sed imap-send: Add missing #include for macosx Remove dependency on a file named "-lz" cvsimport: use git-update-ref when updating On some platforms, certain headers need to be included before regex.h Fix compile with expat, but an old curl version diff-options: add --stat (take 2) diff-options: add --stat (take 2) diff-options: add --patch-with-stat pager: do not fork a pager if PAGER is set to empty. Jon Loeliger: Add git-show reference Call out the two different uses of git-branch and fix a typo. Document the default source of template files. Clarify git-rebase example commands. Reference git-commit-tree for env vars. Fix minor typo. Rewrite synopsis to clarify the two primary uses of git-checkout. Clarify and expand some hook documentation. Removed bogus "<snap>" identifier. Added Packing Heursitics IRC writeup. Jonas Fonseca: manpages: insert two missing [verse] markers for multi-line SYNOPSIS repo-config: give value_ a sane default so regexec won't segfault Add git-annotate(1) and git-blame(1) Josef Weidendorfer: git-mv: fix moves into a subdir from outside Junio C Hamano: "Assume unchanged" git "Assume unchanged" git: do not set CE_VALID with --refresh ls-files: debugging aid for CE_VALID changes. "Assume unchanged" git: --really-refresh fix. ls-files: split "show-valid-bit" into a different option. "assume unchanged" git: documentation. cache_name_compare() compares name and stage, nothing else. git-commit: Now --only semantics is the default. rebase: allow a hook to refuse rebasing. commit: detect misspelled pathspec while making a partial commit. rebase: allow rebasing onto different base. ls-files --error-unmatch pathspec error reporting fix. Detect misspelled pathspec to git-add packed objects: minor cleanup topo-order: make --date-order optional. pack-objects: reuse data from existing packs. pack-objects: finishing touches. git-repack: allow passing a couple of flags to pack-objects. git-tag: -l to list tags (usability). Add contrib/README. SubmittingPatches: note on whitespaces pack-objects: avoid delta chains that are too long. Make "empty ident" error message a bit more helpful. Delay "empty ident" errors until they really matter. Keep Porcelainish from failing by broken ident after making changes. fmt-merge-msg: say which branch things were merged into unless 'master' Allow git-mv to accept ./ in paths. Documentation: fix typo in rev-parse --short option description. fmt-merge-msg: do not add excess newline at the end. rev-list --objects-edge Thin pack - create packfile with missing delta base. send-pack --thin: use "thin pack" delta transfer. Add git-push --thin. Use thin pack transfer in "git fetch". fmt-merge-msg: avoid open "-|" list form for Perl 5.6 rerere: avoid open "-|" list form for Perl 5.6 send-email: avoid open "-|" list form for Perl 5.6 svnimport: avoid open "-|" list form for Perl 5.6 cvsimport: avoid open "-|" list form for Perl 5.6 Fix fmt-merge-msg counting. cherry-pick/revert: error-help message rewording. git-mktree: reverse of git-ls-tree. rev-list.c: fix non-grammatical comments. send-pack: do not give up when remote has insanely large number of refs. gitview: ls-remote invocation shellquote safety. pack-objects: thin pack micro-optimization. pack-objects: use full pathname to help hashing with "thin" pack. count-delta: tweak counting of copied source material. count-delta: fix counting of copied source. Tweak break/merge score to adjust to the new delta generation code. pack-objects: allow "thin" packs to exceed depth limits rev-list --objects-edge: remove duplicated edge commit output. rev-list --objects: use full pathname to help hashing. pack-objects: hash basename and direname a bit differently. Revert "diff-delta: produce optimal pack data" Build and install git-mailinfo. rev-list split: minimum fixup. apply --whitespace fixes and enhancements. apply: squelch excessive errors and --whitespace=error-all apply --whitespace: configuration option. git-apply --whitespace=nowarn Revert "Revert "diff-delta: produce optimal pack data"" git-apply: war on whitespace -- finishing touches. diffcore-break: micro-optimize by avoiding delta between identical files. diffcore-rename: split out the delta counting code. diffcore-delta: stop using deltifier for packing. git-am: --whitespace=x option. diff-delta: cull collided hash bucket more aggressively. git-log (internal): add approxidate. git-log (internal): more options. Pretty-print tagger dates. war on whitespaces: documentation. Documentation: read-tree --aggressive Documentation: rev-list --objects-edge annotate: resurrect raw timestamps. setup_revisions(): handle -n<n> and -<n> internally. GIT-VERSION-GEN: squelch unneeded error from "cat version" show-branch --topics git-commit --amend git-commit: make sure we protect against races. diffcore-rename: similarity estimator fix. show-branch --topics: omit more uninteresting commits. count-delta: no need for this anymore. diffcore-break: similarity estimator fix. diffcore-delta: make change counter to byte oriented again. git-commit --amend: allow empty commit. Const tightening. verify-pack -v: show delta-chain histogram. blame: avoid -lm by not using log(). blame and annotate: show localtime with timezone. blame: avoid "diff -u0". annotate/blame tests updates. annotate-blame test: don't "source", but say "." annotate-blame test: add evil merge. blame: unbreak "diff -U 0". annotate-blame: tests incomplete lines. pack-objects: simplify "thin" pack. Use #define ARRAY_SIZE(x) (sizeof(x)/sizeof(x[0])) refs.c::do_for_each_ref(): Finish error message lines with "\n" fsck-objects: Remove --standalone Fix t1200 test for breakage caused by removal of full-stop at the end of fast-forward message. try_to_simplify_commit(): do not skip inspecting tree change at boundary. repack: prune loose objects when -d is given git-diff: -p disables rename detection. diffcore-rename: somewhat optimized. revision traversal: --remove-empty fix. revision traversal: --remove-empty fix (take #2). diffcore-delta: make the hash a bit denser. diffcore-delta: tweak hashbase value. cvsimport: honor -i and non -i upon subsequent imports fetch: exit non-zero when fast-forward check fails. cvsimport: fix reading from rev-parse git-pull: run repo-config with dash form. unpack_delta_entry(): reduce memory footprint. generate-cmdlist: style cleanups. revamp git-clone. git-merge knows some strategies want to skip trivial merges http-fetch: nicer warning for a server with unreliable 404 status core.warnambiguousrefs: warns when "name" is used and both "name" branch and tag exists. revamp git-clone (take #2). get_sha1_basic(): try refs/... and finally refs/remotes/$foo/HEAD clone: record the remote primary branch with remotes/$origin/HEAD http-push.c: squelch C90 warnings. git-apply: do not barf when updating an originally empty file. rev-list --timestamp git-clone: typofix. git-pull: further safety while on tracking branch. git-pull: reword "impossible to fast-forward" message. sha1_name: warning ambiguous refs. sha1_name: make core.warnambiguousrefs the default. send-email: Identify author at the top when sending e-mail commit-tree: check return value from write_sha1_file() built-in diff: minimum tweaks true built-in diff: run everything in-core. git-push: make --thin pack transfer the default. add clean and ignore rules for xdiff/ GIT 1.3.0 rc1 rev-list --no-merges: argument parsing fix. rev-list: memory usage reduction. rev-list --boundary revision arguments: ..B means HEAD..B, just like A.. means A..HEAD revision.c "..B" syntax: constness fix assume unchanged git: diff-index fix. tree/diff header cleanup. rev-list --boundary: fix re-injecting boundary commits. Makefile: many programs now depend on xdiff/lib.a having been built. revision: --topo-order and --unpacked revision: simplify argument parsing. revision: --max-age alone does not need limit_list() anymore. git-clone: fix handling of upsteram whose HEAD does not point at master. GIT 1.3.0-rc2 combine-diff: use built-in xdiff. combine-diff: refactor built-in xdiff interface. combine-diff: move the code to parse hunk-header into common library. blame: use built-in xdiff date parsing: be friendlier to our European friends. blame.c: fix completely broken ancestry traversal. Match ofs/cnt types in diff interface. blame -S <ancestry-file> Add Documentation/technical/pack-format.txt Thin pack generation: optimization. rev-list --abbrev-commit count-delta: match get_delta_hdr_size() changes. GIT 1.3.0-rc3 git-log: match rev-list --abbrev and --abbrev-commit diff: fix output of total-rewrite diff. diffcore-rename: fix merging back a broken pair. log-tree: separate major part of diff-tree. git log [diff-tree options]... Retire diffcore-pathspec. tree-diff: do not assume we use only one pathspec git log --full-diff Retire git-log.sh blame and friends: adjust to multiple pathspec change. Retire git-log.sh (take#2) diff-* --patch-with-raw Retire git-log.sh (take #3) combine-diff: do not lose hunks with only deletion at end. combine-diff: fix hunks at the end (take #2). Retire t5501-old-fetch-and-upload test. git-commit: do not muck with commit message when no_edit is set. stripspace: make sure not to leave an incomplete line. combine-diff: type fix. Documentation: add a couple of missing docs. Makefile: $(MAKE) check-docs git-log: do not output excess blank line between commits t3600-rm: skip failed-remove test when we cannot make an unremovable file. Fix-up previous expr changes. diff --stat: no need to ask funcnames nor context. t5500: test fix stripspace: incomplete line fix (take #2) Retire git-log.sh (take #4) git-log <diff-options> <paths> documentation "git cmd -h" for shell scripts. rev-list --bisect: limit list before bisecting. GIT v1.3.0-rc4 diff-tree: typefix. diff --stat: do not do its own three-dashes. diff-files --stat: do not dump core with unmerged index. reading $GIT_DIR/info/graft - skip comments correctly. rev-list --boundary: show boundary commits even when limited otherwise. packed_object_info_detail(): check for corrupt packfile. diff --stat: make sure to set recursive. GIT 1.3.0 Karl Hasselström: git-svnimport: -r adds svn revision number to commit messages svnimport: Mention -r in usage summary svnimport: Convert executable flag svnimport: Convert the svn:ignore property svnimport: Read author names and emails from a file Let git-svnimport's author file use same syntax as git-cvsimport's Save username -> Full Name <email@xxxxxxx> map file git-svnimport: Don't assume that copied files haven't changed Keith Packard: Provide configurable UI font for gitk Linus Torvalds: Handling large files with GIT Handling large files with GIT git-merge-tree: generalize the "traverse <n> trees in sync" functionality Teach the "git" command to handle some commands internally First cut at libifying revlist generation Make git diff-generation use a simpler spawn-like interface The war on trailing whitespace Splitting rev-list into revisions lib, end of beginning. git-rev-list libification: rev-list walking Introduce trivial new pager.c helper infrastructure Tie it all together: "git log" Rip out merge-order and make "git log <paths>..." work again. get_revision(): do not dig deeper when we know we are at the end. git-fmt-merge-msg cleanup Fix up diffcore-rename scoring diffcore-delta: 64-byte-or-EOL ultrafast replacement. diffcore-delta: 64-byte-or-EOL ultrafast replacement (hash fix). git-apply: safety fixes Use a *real* built-in diff generator builtin-diff: \No newline at end of file. Fix error handling for nonexistent names Move "--parent" parsing into generic revision.c library code Make path-limiting be incremental when possible. revision: Fix --topo-order and --max-age with reachability limiting. Make "--parents" logs also be incremental When showing a commit message, do not lose an incomplete line. Use less memory in "git log" Clean up trailing whitespace when pretty-printing commits Support "git cmd --help" syntax Lukas Sandström: git-fetch: print the new and old ref when fast-forwarding Marco Costalba: Add a Documentation/git-tools.txt Marco Roeland: imap-send: cleanup execl() call to use NULL sentinel instead of 0 git-commit: document --amend xdiff/xdiffi.c: fix warnings about possibly uninitialized variables Mark Hollomon: Let merge set the default strategy. Mark Wooding: combine-diff: Honour --full-index. combine-diff: Honour -z option correctly. Documentation/Makefile: Some `git-*.txt' files aren't manpages. gitignore: Ignore some more boring things. contrib/emacs/Makefile: Provide tool for byte-compiling files. annotate-tests: override VISUAL when running tests. xdiff: Show function names in hunk headers. gitk: Use git wrapper to run git-ls-remote. Shell utilities: Guard against expr' magic tokens. Martin Langhoff: Introducing git-cvsserver -- a CVS emulator for git. cvsserver: add notes on how to get a checkout under Eclipse cvsserver: Eclipse compat fixes - implement Questionable, alias rlog, add a space after the U cvsserver: Eclipse compat - browsing 'modules' (heads in our case) works cvsserver: add notes on how to get a checkout under Eclipse cvsserver: Eclipse compat fixes - implement Questionable, alias rlog, add a space after the U cvsserver: Eclipse compat - browsing 'modules' (heads in our case) works cvsserver: Checkout correctly on Eclipse annotate: fix -S parameter to take a string cvsserver: Eclipse compat -- now "compare with latest from HEAD" works cvsserver: checkout faster by sending files in a sensible order cvsserver: fix checkouts with -d <somedir> cvsserver: checkout faster by sending files in a sensible order cvsserver: fix checkouts with -d <somedir> cvsserver: nested directory creation fixups for Eclipse clients cvsserver: better error messages cvsserver: anonymous cvs via pserver support cvsserver: updated documentation Martin Mares: gitk: Make error_popup react to Return Matthias Urlichs: cvsimport: Remove master-updating code Don't recurse into parents marked uninteresting. Mike McCormack: Allow adding arbitary lines in the mail header generated by format-patch. Allow format-patch to attach patches Document the --attach flag. Describe how to add extra mail header lines in mail generated by git-format-patch. Add git-imap-send, derived from isync 1.0.1. Avoid a divide by zero if there's no messages to send. Avoid a crash if realloc returns a different pointer. Add documentation for git-imap-send. Nick Hengeveld: Update http-push functionality http-push: fix revision walk HTTP slot reuse fixes http-push: refactor remote file/directory processing http-push: improve remote lock management http-push: support for updating remote info/refs http-push: cleanup Fix broken slot reuse when fetching alternates http-push: add support for deleting remote branches http-push: don't assume char is signed git-ls-remote: send no-cache header when fetching info/refs Set HTTP user agent to git/GIT_VERSION http-fetch: add optional DAV-based pack list Nicolas Pitre: relax delta selection filtering in pack-objects diff-delta: fold two special tests into one plus cleanups diff-delta: produce optimal pack data diff-delta: big code simplification diff-delta: bound hash list length to avoid O(m*n) behavior diff-delta: produce optimal pack data diff-delta: bound hash list length to avoid O(m*n) behavior diff-delta: allow reusing of the reference buffer index test-delta needs zlib to compile diff-delta: bound hash list length to avoid O(m*n) behavior 3% tighter packs for free Olaf Hering: allow double click on current HEAD id after git-pull Paul Jakma: Makefile tweaks: Solaris 9+ dont need iconv / move up uname variables Paul Mackerras: gitk: Make "find" on "Files" work again. gitk: New improved gitk gitk: Fix clicks on arrows on line ends gitk: Fix Update menu item gitk: Various speed improvements gitk: Further speedups gitk: Fix a bug in drawing the selected line as a thick line gitk: Fix display of diff lines beginning with --- or +++ gitk: Make commitdata an array rather than a list gitk: Don't change cursor at end of layout if find in progress gitk: Make downward-pointing arrows end in vertical line segment gitk: Improve appearance of first child links gitk: Fix two bugs reported by users gitk: Use the new --boundary flag to git-rev-list gitk: Show diffs for boundary commits gitk: Prevent parent link from overwriting commit headline gitk: Allow top panes to scroll horizontally with mouse button 2 gitk: Better workaround for arrows on diagonal line segments gitk: replace parent and children arrays with lists gitk: Add a help menu item to display key bindings gitk: Fix incorrect invocation of getmergediffline gitk: Fix bug caused by missing commitlisted elements Pavel Roskin: gitview: Select the text color based on whether the entry in highlighted. Use standard font. Add git-clean command gitk: Fix searching for filenames in gitk Peter Eriksen: Use blob_, commit_, tag_, and tree_type throughout. Replace xmalloc+memset(0) with xcalloc. Petr Baudis: Properly git-bisect reset after bisecting from non-master head Optionally do not list empty directories in git-ls-files --others Support for pickaxe matching regular expressions Improve the git-diff-tree -c/-cc documentation Document --patch-with-raw Separate the raw diff and patch with a newline Randal L. Schwartz: fix imap-send for OSX Rene Scharfe: tar-tree: Use SHA1 of root tree for the basedir tar-tree: Introduce write_entry() tar-tree: Use write_entry() to write the archive contents tar-tree: Remove obsolete code tar-tree: Use the prefix field of a tar header Remove useless pointer update Fix sparse warnings about usage of 0 instead of NULL Fix sparse warnings about non-ANSI function prototypes Rutger Nijlunsing: gitk: add key bindings for selecting first and last commit Ryan Anderson: send-email: Add some options for controlling how addresses are automatically added to the cc: list. send-email: Add --cc Add git-annotate, a tool for assigning blame. annotate: Handle dirty state and arbitrary revisions. annotate: Convert all -| calls to use a helper open_pipe(). annotate: Use qx{} for pipes on activestate. annotate: handle \No newline at end of file. annotate: Add a basic set of test cases. annotate: Support annotation of files on other revisions. Sean Estabrooks: annotate.perl triggers rpm bug Serge E. Hallyn: cleanups: Fix potential bugs in connect.c cleanups: Remove unused vars from combine-diff.c cleanups: Remove impossible case in quote.c cleanups: prevent leak of two strduped strings in config.c cleanups: remove unused variable from exec_cmd.c Shawn Pearce: git ls files recursively show ignored files Add missing programs to ignore list Darwin: Ignore missing /sw/lib Teach git-checkout-index to read filenames from stdin. Prevent --index-info from ignoring -z. Add --temp and --stage=all options to checkout-index. Add missing semicolon to sed command. Stephen Rothwell: gitk: allow goto heads Timo Hirvonen: Use setenv(), fix warnings Tony Luck: fix warning from pack-objects.c Re-fix compilation warnings. annotate should number lines starting with 1 fix field width/precision warnings in blame.c Yann Dirson: Allow empty lines in info/grafts Yasushi SHOJI: Be verbose when !initial commit Make git-clone to take long double-dashed origin option (--origin) git-clone: exit early if repo isn't specified - : send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html