1.5.0 release notes - reword introductory text.

Signed-off-by: Junio C Hamano <junkio@cox.net>
This commit is contained in:
Junio C Hamano
2006-12-27 21:50:45 -08:00
parent 7755f573bd
commit d086af93c4

View File

@@ -1,37 +1,46 @@
Major changes that are not news
-------------------------------
GIT v1.5.0 Release Notes
========================
There were a handful big changes that happened before this major
release.
Old news
--------
This section is for people who are upgrading from ancient
versions. Some of them are one-way street upgrades -- once you
use the feature your repository cannot be used with ancient git.
versions of git. Although all of the changes in this section
happened before the current v1.4.4 release, they are summarized
here in the v1.5.0 release notes for people who skip versions
between upgrading.
In general, you should not have to worry about incompatibility.
There is no need to perform "repository conversion". However,
some of the changes are one-way street upgrades -- once you use
the feature your repository cannot be used with ancient git.
- There is a new configuration variable core.legacyheaders that
changes the format of loose objects to more efficient to pack
and send out of the repository over git native protocol.
However, this format cannot be read by git older than v1.4.2;
people fetching from your repository using older clients over
dumb transports (e.g. http) will also be affected. This is
not enabled by default.
changes the format of loose objects so that they are more
efficient to pack and to send out of the repository over git
native protocol. However, this format cannot be read by git
older than v1.4.2; people fetching from your repository using
older clients over dumb transports (e.g. http) using older
versions of git will also be affected. This is not enabled
by default.
- Another configuration repack.usedeltabaseoffset further
allows packfile to be created in more space efficient format,
which cannot be read by git older than v1.4.3. This is not
which cannot be read by git older than v1.4.3. This is not
enabled by default.
- 'git pack-refs' appeared in v1.4.4; this command allows tags
to be accessed much more efficiently than the traditional
'one-file-per-tag' format. Older git-native client can fetch
from a repository that packed its tags, but older dumb
transports cannot. This is done by an explicit user action,
either by use of "git pack-refs --prune" command or by use of
"git gc" command.
'one-file-per-tag' format. Older git-native clients can
fetch from a repository that packed its tags (the server side
needs to run the up-to-date version of git), but older dumb
transports cannot. Packing of refs is done by an explicit
user action, either by use of "git pack-refs --prune" command
or by use of "git gc" command.
- 'git -p' to paginate anything -- many commands do pagination
by default on a tty. Introduced between v1.4.1 and v1.4.2;
this may surprise old timer users.
this may surprise old timers.
- 'git archive' superseded 'git tar' in v1.4.3;
@@ -43,7 +52,10 @@ use the feature your repository cannot be used with ancient git.
- 'gitweb' became part of git.git during v1.4.0 timeperiod and
seriously modified since then.
- reflog is an v1.4.0 invention.
- reflog is an v1.4.0 invention. This alows you to name a
revision that a branch used to be at (e.g. "git diff
master@{yesterday} master" allows you to see changes since
yesterday's tip of the branch).
Updates in v1.5.0 since v1.4.4 series
@@ -80,7 +92,9 @@ Updates in v1.5.0 since v1.4.4 series
- The data for origin repository is stored in the configuration
file $GIT_DIR/config, not in $GIT_DIR/remotes/, for newly
created clones (the latter is still supported).
created clones. The latter is still supported and there is
no need to convert your existing repository if you are
already comfortable with your workflow with the layout.
- git-clone always uses what is known as "separate remote"
layout for a newly created repository with a working tree;
@@ -200,391 +214,3 @@ Updates in v1.5.0 since v1.4.4 series
- Better error messages for often used Porcelainish commands.
----------------------------------------------------------------
Alex Riesen (1):
Make perl/ build procedure ActiveState friendly.
Alexandre Julliard (1):
vc-git: Ignore errors caused by a non-existent directory in vc-git-registered.
Andreas Ericsson (2):
ls-files: Give hints when errors happen.
git-diff: Introduce --index and deprecate --cached.
Andy Parkins (8):
Improve git-prune -n output
Add support to git-branch to show local and remote branches
Use .git/config for storing "origin" shortcut repository
De-emphasise the symbolic link documentation.
Explicitly add the default "git pull" behaviour to .git/config on clone
Colourise git-branch output
Allow subcommand.color and color.subcommand color configuration
git-status always says what branch it's on
Aneesh Kumar K.V (1):
Add config example with respect to branch
Brian Gernhardt (6):
Add --add option to git-repo-config
Make git-diff documentation use [--] when it should.
Add documentation for show-branch --topics
Remove COLLISION_CHECK from Makefile since it's not used.
Keep "git --git-dir" from causing a bus error.
Make git-show-branch options similar to git-branch.
David Miller (1):
Pass -M to diff in request-pull
Eric Wong (29):
git-svn: handle authentication without relying on cached tokens on disk
git-svn: correctly access repos when only given partial read permissions
git-svn: exit with status 1 for test failures
git-svn: allow SVN:: lib users to track the root of the repository (again)
git-svn: use ~/.subversion config files when using SVN:: libraries
git-svn: enable delta transfers during fetches when using SVN:: libs
git-svn: update tests for recent changes
git-svn: error out when the SVN connection fails during a fetch
git-svn: fix output reporting from the delta fetcher
git-svn: color support for the log command
git-svn: documentation updates
git-svn: fix multi-init
git-svn: avoid network timeouts for long-running fetches
git-svn: extra error check to ensure we open a file correctly
git-svn: use do_switch for --follow-parent if the SVN library supports it
rerere: add clear, diff, and status commands
rerere: record (or avoid misrecording) resolved, skipped or aborted rebase/am
git-svn: enable logging of information not supported by git
git-svn: allow dcommit to take an alternate head
git-svn: correctly display fatal() error messages
git-svn: correctly handle packed-refs in refs/remotes/
git-svn: correctly handle "(no author)" when using an authors file
git-svn: convert to using Git.pm
git-svn: remove support for the svn command-line client
git-svn: rename 'commit' command to 'set-tree'
git-cvsserver: fix breakage when calling git merge-file
Remove NO_ACCURATE_DIFF options from build systems
git-svn: enable common fetch/commit options for dcommit
Makefile: add quick-install-doc for installing pre-built manpages
Han-Wen Nienhuys (2):
git-tag: allow empty tag message if -m is given explicitly.
ident.c: Trim hint printed when gecos is empty.
Iñaki Arenaza (1):
git-cvsimport: add support for CVS pserver method HTTP/1.x proxying
J. Bruce Fields (5):
Documentation: clarify tutorial pull/merge discussion
cvs-migration: improved section titles, better push/commit explanation
Documentation: reorganize cvs-migration.txt
Documentation: update git-clone man page with new behavior
Documentation: simpler shared repository creation
Jakub Narebski (26):
gitweb: Protect against possible warning in git_commitdiff
gitweb: Buffer diff header to deal with split patches + git_patchset_body refactoring
gitweb: Default to $hash_base or HEAD for $hash in "commit" and "commitdiff"
gitweb: New improved formatting of chunk header in diff
gitweb: Add an option to href() to return full URL
gitweb: Refactor feed generation, make output prettier, add Atom feed
gitweb: Finish restoring "blob" links in git_difftree_body
gitweb: Replace SPC with &nbsp; also in tag comment
gitweb: Do not use esc_html in esc_path
gitweb: Use git-show-ref instead of git-peek-remote
gitweb: Add author and committer email extraction to parse_commit
gitweb: Add author and contributor email to Atom feed
gitweb: Use author_epoch for pubdate in gitweb feeds
gitweb: Make project description in projects list link to summary view
gitweb: Fix Atom feed <logo>: it is $logo, not $logo_url
git-clone: Rename --use-immingled-remote option to --no-separate-remote
Document git-diff whitespace flags -b and -w
gitweb: Allow PNG, GIF, JPEG images to be displayed in "blob" view
gitweb: Don't use Content-Encoding: header in git_snapshot
gitweb: Show target of symbolic link in "tree" view
gitweb: Add generic git_object subroutine to display object of any type
gitweb: Hyperlink target of symbolic link in "tree" view (if possible)
gitweb: SHA-1 in commit log message links to "object" view
gitweb: Do not show difftree for merges in "commit" view
gitweb: Add title attribute to ref marker with full ref name
gitweb: Add "next" link to commit view
Jeff King (2):
shortlog: fix segfault on empty authorname
vim syntax: follow recent changes to commit template
Jim Meyering (1):
Set permissions of each new file before "cvs add"ing it.
Johannes Schindelin (30):
Build in shortlog
shortlog: do not crash on parsing "[PATCH"
shortlog: read mailmap from ./.mailmap again
shortlog: handle email addresses case-insensitively
shortlog: fix "-n"
shortlog: use pager
sha1_object_info(): be consistent with read_sha1_file()
xdiff: add xdl_merge()
xdl_merge(): fix an off-by-one bug
xdl_merge(): fix thinko
diff -b: ignore whitespace at end of line
xdl_merge(): fix and simplify conflict handling
cvs-migration document: make the need for "push" more obvious
Add builtin merge-file, a minimal replacement for RCS merge
merge-file: support -p and -q; fix compile warnings
Get rid of the dependency on RCS' merge program
merge-recursive: add/add really is modify/modify with an empty base
INSTALL: no need to have GNU diff installed
git-show: grok blobs, trees and tags, too
Document git-merge-file
add a function to rename sections in the config
git-branch: rename config vars branch.<branch>.*, too
Introduce GIT_TEMPLATE_DIR
Use git-merge-file in git-merge-one-file, too
git-tag: support -F <file> option
git-reset --hard: tell the user what the HEAD was reset to
move read_mmfile() into xdiff-interface
Add a test for git-rerere
Make git-rerere a builtin
commit-tree: encourage UTF-8 commit messages.
Josef Weidendorfer (2):
Add branch.*.merge warning and documentation update
Move "no merge candidate" warning into git-pull
Junio C Hamano (126):
upload-pack: stop the other side when they have more roots than we do.
apply --numstat: mark binary diffstat with - -, not 0 0
pack-objects: tweak "do not even attempt delta" heuristics
Store peeled refs in packed-refs file.
remove merge-recursive-old
git-merge: make it usable as the first class UI
merge: allow merging into a yet-to-be-born branch.
Store peeled refs in packed-refs (take 2).
git-fetch: reuse ls-remote result.
git-fetch: fix dumb protocol transport to fetch from pack-pruned ref
git-fetch: allow glob pattern in refspec
refs outside refs/{heads,tags} match less strongly.
Typefix builtin-prune.c::prune_object()
Allow git push to delete remote ref.
gitweb: (style) use chomp without parentheses consistently.
git-clone: stop dumb protocol from copying refs outside heads/ and tags/.
git-branch -D: make it work even when on a yet-to-be-born branch
git-shortlog: fix common repository prefix abbreviation.
git-shortlog: make common repository prefix configurable with .mailmap
git-commit: show --summary after successful commit.
git-fetch: exit with non-zero status when fast-forward check fails
git-fetch: allow forcing glob pattern in refspec
fetch-pack: do not barf when duplicate re patterns are given
grep: do not skip unmerged entries when grepping in the working tree.
git-merge: tighten error checking.
git-merge: do not leak rev-parse output used for checking internally.
cvsimport: style fixup.
git-merge: fix confusion between tag and branch
xmerge: make return value from xdl_merge() more usable.
merge-recursive: use xdl_merge().
read-tree: further loosen "working file will be lost" check.
Loosen "working file will be lost" check in Porcelain-ish
read-tree: document --exclude-per-directory
git-merge: squelch needless error message.
git-merge: fix "fix confusion between tag and branch" for real
Fix perl/ build.
git-rerere: add 'gc' command.
Documentation/git-commit: rewrite to make it more end-user friendly.
git-commit: allow --only to lose what was staged earlier.
shortlog: remove "[PATCH]" prefix from shortlog output
shortlog: fix segfault on empty authorname
diff --numstat: show binary with '-' to match "apply --numstat"
add test case for recursive merge
git-push: document removal of remote ref with :<dst> pathspec
Revert "git-diff: Introduce --index and deprecate --cached."
git merge: reword failure message.
spurious .sp in manpages
git-push: accept tag <tag> as advertised.
send-pack: tighten checks for remote names
branch --color: change default color selection.
git-blame: show lines attributed to boundary commits differently.
config documentation: group color items together.
git-svn: allow both diff.color and color.diff
Update git-diff documentation
git-fetch: make it work from within a subdirectory.
git-reset: make it work from within a subdirectory.
git-reset [--mixed] <tree> [--] <paths>...
merge: give a bit prettier merge message to "merge branch~$n"
git-clone: use wildcard specification for tracking branches
git-pull: refuse default merge without branch.*.merge
git-clone: lose the artificial "first" fetch refspec
git-clone: lose the traditional 'no-separate-remote' layout
update-index: make D/F conflict error a bit more verbose.
git-add: remove conflicting entry when adding.
Fix check_file_directory_conflict().
Fix mis-mark-up in git-merge-file.txt documentation
markup fix in svnimport documentation.
rev-list --left-right
Teach all of log family --left-right output.
Make left-right automatic.
Teach show-branch how to show ref-log data.
git-fetch: Avoid reading packed refs over and over again
avoid accessing _all_ loose refs in git-show-ref --verify
show-ref: fix --quiet --verify
show-ref: fix --verify --hash=length
parse-remote::expand_refs_wildcard()
show-ref: fix --exclude-existing
racy-git: documentation updates.
rerere: fix breakage of resolving.
fix testsuite: make sure they use templates freshly built from the source
Teach git-branch to delete tracking branches with -r -d
blame: -b (blame.blankboundary) and --root (blame.showroot)
git-add --interactive
git-add --interactive: hunk splitting
Revert "fix testsuite: make sure they use templates freshly built from the source"
Do not create $GIT_DIR/remotes/ directory anymore.
Use preprocessor constants for environment variable names.
Revert "Make left-right automatic."
fix populate-filespec
config_rename_section: fix FILE* leak
simplify inclusion of system header files.
revision: --skip=<n>
git-add: error out when given no arguments.
compat/inet_ntop: do not use u_int
diff documentation: mostly talk about <commit>
add for_each_reflog_ent() iterator
Protect commits recorded in reflog from pruning.
Teach git-repack to preserve objects referred to by reflog entries.
reflog: fix warning message.
Move in_merge_bases() to commit.c
git reflog expire
Revert "git-pull: refuse default merge without branch.*.merge"
parse-remote: mark all refs not for merge only when fetching more than one
_XOPEN_SOURCE problem also exists on FreeBSD
commit-tree: do not overflow MAXPARENT
reflog expire: prune commits that are not incomplete
merge and reset: adjust for "reset --hard" messages
default pull: forget about "newbie protection" for now.
Do not support "partial URL shorthand" anymore.
Really fix headers for __FreeBSD__
git-tag: lose exit after die
reflog expire: do not punt on tags that point at non commits.
Allow branch.*.merge to talk about remote tracking branches.
git-add --interactive: add documentation
match_pathspec() -- return how well the spec matched
git-rm: update to saner semantics
t3600: update the test for updated git rm
git-rm: Documentation
read_directory: show_both option.
git-add: add ignored files when asked explicitly.
git-add: warn when adding an ignored file with an explicit request.
git-add -f: allow adding otherwise ignored files.
GIT v1.5.0 preview
Move encoding conversion routine out of mailinfo to utf8.c
i18n.logToUTF8: convert commit log message to UTF-8
Teach log family --encoding
Lars Hjemli (4):
Add -v and --abbrev options to git-branch
git-branch: add options and tests for branch renaming
rename_ref: use lstat(2) when testing for symlink
git-branch: let caller specify logmsg
Luben Tuikov (1):
Export PERL_PATH
Michael Loeffler (1):
git-fetch: ignore dereferenced tags in expand_refs_wildcard
Nicolas Pitre (12):
builtin git-shortlog is broken
pack-objects: remove redundent status information
make 'git add' a first class user friendly interface to the index
change the unpack limit treshold to a saner value
repacked packs should be read-only
make commit message a little more consistent and conforting
make patch_delta() error cases a bit more verbose
make git a bit less cryptic on fetch errors
index-pack usage of mmap() is unacceptably slower on many OSes other than Linux
clarify some error messages wrt unknown object types
checkout: make the message about the need for a new branch a bit clearer
add .mailmap for git-shortlog output with the git repository
Paul Mackerras (1):
gitk: Fix enabling/disabling of menu items on Mac OS X
Peter Baumann (1):
config option log.showroot to show the diff of root commits
Petr Baudis (1):
Make git-clone --use-separate-remote the default
Quy Tonthat (4):
git-clone documentation
Documentation: new option -P for git-svnimport
git-branch -d: do not stop at the first failure.
Documentation/git-branch: new -r to delete remote-tracking branches.
René Scharfe (1):
shortlog: remove range check
Robert Fitzsimons (17):
gitweb: Show '...' links in "summary" view only if there are more items
gitweb: Add missing show '...' links change.
gitweb: optimize git_get_last_activity.
gitweb: optimize git_shortlog_body.
gitweb: optimize git_summary.
gitweb: Use rev-list pattern search options.
gitweb: Require a minimum of two character for the search text.
gitweb: Allow search to be disabled from the config file.
gitweb: Paginate commit/author/committer search output
gitweb: Add parse_commits, used to bulk load commit objects.
gitweb: We do longer need the --parents flag in rev-list.
gitweb: Change summary, shortlog actions to use parse_commits.
gitweb: Change log action to use parse_commits.
gitweb: Change header search action to use parse_commits.
gitweb: Change atom, rss actions to use parse_commits.
gitweb: Change history action to use parse_commits.
gitweb: Use rev-list --skip option.
Robin Rosenberg (1):
Make cvsexportcommit work with filenames with spaces and non-ascii characters.
Sean Estabrooks (1):
Update documentation to remove incorrect GIT_DIFF_OPTS example.
Shawn O. Pearce (31):
Teach git-completion.bash how to complete git-merge.
Hide plumbing/transport commands from bash completion.
Teach bash how to complete options for git-name-rev.
Add current branch in PS1 support to git-completion.bash.
Teach bash how to complete git-format-patch.
Teach bash how to complete git-cherry-pick.
Teach bash how to complete git-rebase.
Teach bash about git log/show/whatchanged options.
Support bash completion of refs/remote.
Teach bash about git-repo-config.
Support --strategy=x completion in addition to --strategy x.
Cache the list of merge strategies and available commands during load.
Teach bash about git-am/git-apply and their whitespace options.
Teach bash how to complete long options for git-commit.
Fix broken bash completion of local refs.
Remove uncontested renamed files during merge.
Avoid accessing a slow working copy during diffcore operations.
Provide more meaningful output from 'git init-db'.
Enable reflogs by default in any repository with a working directory.
Teach bash the new features of 'git show'.
Suggest use of "git add file1 file2" when there is nothing to commit.
Align section headers of 'git status' to new 'git add'.
Default GIT_COMMITTER_NAME to login name in recieve-pack.
Suggest 'add' in am/revert/cherry-pick.
Rename imap-send's internal info/warn functions.
Introduce a global level warn() function.
Don't crash during repack of a reflog with pruned commits.
Use extended SHA1 syntax in merge-recursive conflicts.
Display 'theirs' branch name when possible in merge.
Rename gitfakemmap to git_mmap.
Switch git_mmap to use pread.
Terje Sten Bjerkseth (1):
Fix system header problems on Mac OS X
Uwe Zeisberger (1):
Fix documentation copy&paste typo