-What's in git.git (Jun 2008, issue #04; Wed, 25)
+What's in git.git (Jul 2008, issue #01; Tue, 01)
- maint 74b1e12 (git-svn: make rebuild respect rewriteRoot option, 2008-06-24)
- master 85fe23e (verify-pack: test for detection of index v2 object CRC mismatch, 2008-06-24)
+ maint 7ad0f27 (Start draft release notes for 1.5.6.2, 2008-07-01)
+ master e903b40 (Update draft release notes for 1.6.0, 2008-07-01)
------------------------------------------------------------------------
-We'd need a maint release soon to push out the mkstemp() breakage but not
-tonight. There are a handful changes that are in 'master' and 'next' that
-need backport/backmerge before 1.5.6.1 happens.
+There are a few fixes on 'maint', in addition to futureproofing of "git
+shell" so that eventually we can update the ssh clients to ask for server
+side programs using "git upload-pack" syntax without a dash between "git"
+and the subcommand name.
-* The 'maint' branch has these fixes since the last announcement.
+Many of the medimu size items for 1.6.0 have been merged to 'master'. The
+port to MinGW series will also be merged shortly.
-Jan Krüger (1):
- git-svn: make rebuild respect rewriteRoot option
+----------------------------------------------------------------
-Patrick Higgins (1):
- Workaround for AIX mkstemp()
+GIT v1.6.0 Release Notes (draft)
+================================
+
+User visible changes
+--------------------
+
+With the default Makefile settings, most of the programs are now
+installed outside your $PATH, except for "git", "gitk", "git-gui" and
+some server side programs that need to be accessible for technical
+reasons. Invoking a git subcommand as "git-xyzzy" from the command
+line has been deprecated since early 2006 (and officially announced in
+1.5.4 release notes); use of them from your scripts after adding
+output from "git --exec-path" to the $PATH is still supported in this
+release, but users are again strongly encouraged to adjust their
+scripts to use "git xyzzy" form, as we will stop installing
+"git-xyzzy" hardlinks for built-in commands in later releases.
+
+Source changes needed for porting to MinGW environment are now all in the
+main git.git codebase.
+
+By default, packfiles created with this version uses delta-base-offset
+encoding introduced in v1.4.4. Pack idx files are using version 2 that
+allows larger packs and added robustness thanks to its CRC checking,
+introduced in v1.5.2.
+
+
+Updates since v1.5.6
+--------------------
+
+(subsystems)
+
+* git-p4 in contrib learned "allowSubmit" configuration to control on
+ which branch to allow "submit" subcommand.
+
+(portability)
+
+* Sample hook scripts shipped in templates/ are now suffixed with
+ *.sample. We used to prevent them from triggering by default by
+ relying on the fact that we install them as unexecutable, but on
+ some filesystems this approach does not work. Instead of running
+ "chmod +x" on them, the users who want to activate these samples
+ as-is can now rename them dropping *.sample suffix.
+
+* perl's in-place edit (-i) does not work well without backup files on Windows;
+ some tests are rewritten to cope with this.
+
+(documentation)
+
+* Updated howto/update-hook-example
+
+* Got rid of usage of "git-foo" from the tutorial.
+
+* Disambiguating "--" between revs and paths is finally documented.
+
+(performance, robustness, sanity etc.)
+
+* even more documentation pages are now accessible via "man" and "git help".
+
+* reduced excessive inlining to shrink size of the "git" binary.
+
+* verify-pack checks the object CRC when using version 2 idx files.
+
+* When an object is corrupt in a pack, the object became unusable even
+ when the same object is available in a loose form, We now try harder to
+ fall back to these redundant objects when able. In particular, "git
+ repack -a -f" can be used to fix such a corruption as long as necessary
+ objects are available.
+
+* git-clone does not create refs in loose form anymore (it behaves as
+ if you immediately ran git-pack-refs after cloning). This will help
+ repositories with insanely large number of refs.
+
+* core.fsyncobjectfiles configuration can be used to ensure that the loose
+ objects created will be fsync'ed (this is only useful on filesystems
+ that does not order data writes properly).
+
+* "git commit-tree" plumbing can make Octopus with more than 16 parents.
+ "git commit" has been capable of this for quite some time.
+
+(usability, bells and whistles)
+
+* git-apply can handle a patch that touches the same path more than once
+ much better than before.
+
+* git-apply can be told not to trust the line counts recorded in the input
+ patch but recount, with the new --recount option.
+
+* git-archive can be told to omit certain paths from its output using
+ export-ignore attributes.
+
+* git-clone can clone from a remote whose URL would be rewritten by
+ configuration stored in $HOME/.gitconfig now.
+
+* git-diff --check now checks leftover merge conflict markers.
+
+* When remote side used to have branch 'foo' and git-fetch finds that now
+ it has branch 'foo/bar', it refuses to lose the existing remote tracking
+ branch and its reflog. The error message has been improved to suggest
+ pruning the remote if the user wants to proceed and get the latest set
+ of branches from the remote, including such 'foo/bar'.
+
+* fast-export learned to export and import marks file; this can be used to
+ interface with fast-import incrementally.
+
+* Original SHA-1 value for "update-ref -d" is optional now.
+
+* git-send-mail can talk not just over SSL but over TLS now.
+
+* You can tell "git status -u" to even more aggressively omit checking
+ untracked files with --untracked-files=no.
+
+* Error codes from gitweb are made more descriptive where possible, rather
+ than "403 forbidden" as we used to issue everywhere.
+
+(internal)
+
+
+Fixes since v1.5.6
+------------------
+
+All of the fixes in v1.5.6 maintenance series are included in
+this release, unless otherwise noted.
+
+ * diff -c/--cc showed unnecessary "deletion" lines at the context
+ boundary (needs backmerge to maint).
+
+ * "git-clone <src> <dst>" did not create leading directories for <dst>
+ like the scripted version used to do (needs backport to maint).
+
+
+----------------------------------------------------------------
+
+* The 'maint' branch has these fixes since v1.5.6.1.
+
+Avery Pennarun (1):
+ git-svn: avoid filling up the disk with temp files.
+
+Björn Steinbrink (1):
+ git cat-file: Fix memory leak in batch mode
+
+Eric Wong (1):
+ git-svn: don't sanitize remote names in config
+
+Jeff King (1):
+ doc/rev-parse: clarify reflog vs --until for specifying revisions
+
+Jochen Voss (1):
+ avoid off-by-one error in run_upload_archive
+
+Joey Hess (1):
+ fix git config example syntax
+
+Junio C Hamano (5):
+ diff --check: do not discard error status upon seeing a good line
+ git-shell: accept "git foo" form
+ GIT 1.5.4.6
+ GIT 1.5.5.5
+ Start draft release notes for 1.5.6.2
+
+Thomas Rast (1):
+ Fix 'git show' on signed tag of signed tag of commit
* The 'master' branch has these since the last announcement
in addition to the above.
-Jeff King (1):
- clone: create intermediate directories of destination repo
-
-Junio C Hamano (2):
- pre-rebase hook update
- Ship sample hooks with .sample suffix
-
-Michele Ballabio (1):
- t9301-fast-export.sh: Remove debug line
-
-Nicolas Pitre (8):
- call init_pack_revindex() lazily
- implement some resilience against pack corruptions
- test case for pack resilience against corruptions
- refactor pack structure allocation
- optimize verify-pack a bit
- move show_pack_info() where it belongs
- verify-pack: check packed object CRC when using index version 2
- verify-pack: test for detection of index v2 object CRC mismatch
+Alex Riesen (1):
+ Fix use of "perl -i" on Windows
+
+Brian Gernhardt (2):
+ Fix t4017-diff-retval for white-space from wc
+ Add test results directory to t/.gitignore
+
+Christian Couder (1):
+ help: check early if we have a command, if not try a documentation topic
+
+Dmitry Potapov (2):
+ update-hook-example: optionally allow non-fast-forward
+ shrink git-shell by avoiding redundant dependencies
+
+Don Zickus (1):
+ git-apply: handle a patch that touches the same path more than once
+ better
+
+Jeff King (3):
+ improve for-each-ref test script
+ fetch: report local storage errors in status table
+ fetch: give a hint to the user when local refs fail to update
+
+Jing Xue (1):
+ Add 'git-p4.allowSubmit' to git-p4
+
+Johan Herland (4):
+ Incorporate fetched packs in future object traversal
+ Move pack_refs() and friends into libgit
+ Prepare testsuite for a "git clone" that packs refs
+ Teach "git clone" to pack refs
+
+Johannes Schindelin (4):
+ clone: respect url.insteadOf setting in global configs
+ commit-tree: lift completely arbitrary limit of 16 parents
+ Allow git-apply to recount the lines in a hunk (AKA recountdiff)
+ clone: respect the settings in $HOME/.gitconfig and /etc/gitconfig
+
+Jonathan Nieder (7):
+ Documentation: fix links to tutorials and other new manual pages
+ whitespace fix in Documentation/git-repack.txt
+ Documentation: complicate example of "man git-command"
+ git-daemon(1): don't assume git-daemon is in /usr/bin
+ Documentation: prepare to be consistent about "git-" versus "git "
+ Documentation: be consistent about "git-" versus "git "
+ Documentation formatting and cleanup
+
+Junio C Hamano (15):
+ git-shell: accept "git foo" form
+ Prepare execv_git_cmd() for removal of builtins from the filesystem
+ Keep some git-* programs in $(bindir)
+ Allow "git-reset path" when unambiguous
+ Start draft release notes for 1.6.0
+ diff --check: explain why we do not care whether old side is binary
+ check_and_emit_line(): rename and refactor
+ checkdiff: pass diff_options to the callback
+ Teach "diff --check" about new blank lines at end
+ diff --check: detect leftover conflict markers
+ Update sample pre-commit hook to use "diff --check"
+ Document the double-dash "rev -- path" disambiguator
+ t9700: skip when Test::More is not available
+ Update draft release notes for 1.6.0
+ Update draft release notes for 1.6.0
+
+Kevin Ballard (1):
+ git-send-email: Accept fifos as well as files
+
+Lea Wiemann (5):
+ t/test-lib.sh: add test_external and test_external_without_stderr
+ Git.pm: add test suite
+ gitweb: standarize HTTP status codes
+ test-lib.sh: show git init output when in verbose mode
+ GIT-VERSION-GEN: do not fail if a 'HEAD' file exists in the working copy
+
+Linus Torvalds (4):
+ Split up default "core" config parsing into helper routine
+ Split up default "user" config parsing into helper routine
+ Split up default "i18n" and "branch" config parsing into helper routines
+ Add config option to enable 'fsync()' of object files
+
+Miklos Vajna (1):
+ A simple script to parse the results from the testcases
+
+Nanako Shiraishi (1):
+ gitcli: Document meaning of --cached and --index
+
+Nguyễn Thái Ngọc Duy (1):
+ Move all dashed-form commands to libexecdir
+
+Nicolas Pitre (2):
+ repack.usedeltabaseoffset config option now defaults to "true"
+ pack.indexversion config option now defaults to 2
+
+Olivier Marin (2):
+ Documentation: remove {show,whatchanged}.difftree config options
+ show_stats(): fix stats width calculation
+
+Patrick Higgins (1):
+ Remove the use of '--' in merge program invocation
+
+Stephan Beyer (2):
+ api-builtin.txt: update and fix typo
+ t3404: stricter tests for git-rebase--interactive
+
+Sverre Rabbelier (2):
+ Modify test-lib.sh to output stats to t/test-results/*
+ Hook up the result aggregation in the test makefile.
+
+Ted Percival (1):
+ Don't use dash commands (git-foo) in tutorial-2
+
+Thomas Rast (2):
+ git-send-email: add support for TLS via Net::SMTP::SSL
+ git-send-email: prevent undefined variable warnings if no encryption is
+ set
+
+jrnieder@uchicago.edu (1):
+ Documentation: don't assume git-sh-setup and git-parse-remote are in PATH