Junio C Hamano  committed 46774a8

GIT 0.99.9

Done in 0.99.9


* Cygwin port [HPA].

* OpenBSD build [Merlyn and others].


* clone request over git native protocol from a repository with
too many refs did not work; this has been fixed.

* git-daemon got safer for use [HPA].

* Extended SHA1 parser was not enforcing uniqueness for
abbreviated SHA1; this has been fixed.

* http transport does not barf on funny characters in URL.

* The ref naming restrictions have been formalized and the
coreish refuses to create funny refs; we still need to audit
importers. See git-check-ref-format(1).

New Features and Commands

* .git/config file as a per-repository configuration mechanism,
and some commands understand it [Linus]. See

* The core.filemode configuration item can be used to make us a
bit more FAT friendly. See git(7).

* The extended SHA1 notation acquired Peel-the-onion operator
^{type} and ^{}. See git-rev-parse(1).

* SVN importer [Matthias]. See git-svnimport(1).

* .git/objects/[0-9a-f]{2} directories are created on demand,
and removed when becomes empty after prune-packed [Linus].

* Filenames output from various commands without -z option are
quoted when they embed funny characters (TAB and LF) using
C-style quoting within double-quotes, to match the proposed
GNU diff/patch notation [me, but many people contributed in
the discussion].

* git-mv is expected to be a better replacement for git-rename.
While the latter has two parameter restriction, it acts more
like the regular 'mv' that can move multiple things to one
destinatino directory [Josef Weidendorfer].

* git-checkout can take filenames to revert the changes to
them. See git-checkout(1)

* The new program git-am is a replacement for git-applymbox that
has saner command line options and a bit easier to use when a
patch does not apply cleanly.

* git-ls-remote can show unwrapped onions using ^{} notation, to
help Cogito to track tags.

* git-merge-recursive backend can merge unrelated projects.

* git-clone over native transport leaves the result packed.

* git-http-fetch issues multiple requests in parallel when
underlying cURL library supports it [Nick and Daniel].

* git-fetch-pack and git-upload-pack try harder to figure out
better common commits [Johannes].

* git-read-tree -u removes a directory when it makes it empty.

* git-diff-* records abbreviated SHA1 names of original and
resulting blob; this sometimes helps to apply otherwise an
unapplicable patch by falling back to 3-way merge.

* git-format-patch now takes series of rev ranges and
with '-m --stdout', writes them out to the standard output.
This can be piped to 'git-am' to implement cheaper

* git-tag takes '-u' to specify the tag signer identity [Linus].

* git-rev-list can take optional pathspecs to skip commits that
do not touch them (--dense) [Linus].

* Comes with new and improved gitk [Paulus and Linus].

Signed-off-by: Junio C Hamano <>

  • Participants
  • Parent commits 5773c9f
  • Tags v0.99.9

Comments (0)

Files changed (2)

+GIT_VERSION = 0.99.9
 CFLAGS = -g -O2 -Wall

File debian/changelog

+git-core (0.99.9-0) unstable; urgency=low
+  * GIT 0.99.9
+ -- Junio C Hamano <>  Sat, 29 Oct 2005 14:34:30 -0700
 git-core (0.99.8-0) unstable; urgency=low
   * GIT 0.99.8