git/list[1] front-page[2] threads[3] people[4] search[5] about
 

[ANNOUNCE] GIT 1.5.6

From
Junio C Hamano <gitster@pobox.com>
Date
Jun 18, 2008, 23:24 UTC
Message-ID
<7vmylixr6h.fsf@gitster.siamese.dyndns.org>

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

  http://www.kernel.org/pub/software/scm/git/
  git-1.5.6.tar.{gz,bz2}			(tarball)
  git-htmldocs-1.5.6.tar.{gz,bz2}		(preformatted docs)
  git-manpages-1.5.6.tar.{gz,bz2}		(preformatted docs)
  RPMS/$arch/git-*-1.5.6-1.$arch.rpm	(RPM)

As promised, this cycle was short and the release is with only relatively small impact changes.

---------------------------------------------------------------- GIT v1.5.6 Release Notes ========================

Updates since v1.5.5 --------------------

(subsystems)
* Comes with updated gitk and git-gui.
(portability)
* git will build on AIX better than before now.
* core.ignorecase configuration variable can be used to work better on
  filesystems that are not case sensitive.
* "git init" now autodetects the case sensitivity of the filesystem and
  sets core.ignorecase accordingly.
* cpio is no longer used; neither "curl" binary (libcurl is still used).
(documentation)
* Many freestanding documentation pages have been converted and made
  available to "git help" (aka "man git<something>") as section 7 of
  the manual pages. This means bookmarks to some HTML documentation
  files may need to be updated (eg "tutorial.html" became
  "gittutorial.html").
(performance)
* "git clone" was rewritten in C.  This will hopefully help cloning a
  repository with insane number of refs.
* "git rebase --onto $there $from $branch" used to switch to the tip of
  $branch only to immediately reset back to $from, smudging work tree
  files unnecessarily.  This has been optimized.
* Object creation codepath in "git-svn" has been optimized by enhancing
  plumbing commands git-cat-file and git-hash-object.
(usability, bells and whistles)
* "git add -p" (and the "patch" subcommand of "git add -i") can choose to
  apply (or not apply) mode changes independently from contents changes.
* "git bisect help" gives longer and more helpful usage information.
* "git bisect" does not use a special branch "bisect" anymore; instead, it
  does its work on a detached HEAD.
* "git branch" (and "git checkout -b") can be told to set up
  branch.<name>.rebase automatically, so that later you can say "git pull"
  and magically cause "git pull --rebase" to happen.
* "git branch --merged" and "git branch --no-merged" can be used to list
  branches that have already been merged (or not yet merged) to the
  current branch.
* "git cherry-pick" and "git revert" can add a sign-off.
* "git commit" mentions the author identity when you are committing
  somebody else's changes.
* "git diff/log --dirstat" output is consistent between binary and textual
  changes.
* "git filter-branch" rewrites signed tags by demoting them to annotated.
* "git format-patch --no-binary" can produce a patch that lack binary
  changes (i.e. cannot be used to propagate the whole changes) meant only
  for reviewing.
* "git init --bare" is a synonym for "git --bare init" now.
* "git gc --auto" honors a new pre-auto-gc hook to temporarily disable it.
* "git log --pretty=tformat:<custom format>" gives a LF after each entry,
  instead of giving a LF between each pair of entries which is how
  "git log --pretty=format:<custom format>" works.
* "git log" and friends learned the "--graph" option to show the ancestry
  graph at the left margin of the output.
* "git log" and friends can be told to use date format that is different
  from the default via 'log.date' configuration variable.
* "git send-email" now can send out messages outside a git repository.
* "git send-email --compose" was made aware of rfc2047 quoting.
* "git status" can optionally include output from "git submodule
  summary".
* "git svn" learned --add-author-from option to propagate the authorship
  by munging the commit log message.
* new object creation and looking up in "git svn" has been optimized.
* "gitweb" can read from a system-wide configuration file.
(internal)
* "git unpack-objects" and "git receive-pack" is now more strict about
  detecting breakage in the objects they receive over the wire.

Fixes since v1.5.5 ------------------

All of the fixes in v1.5.5 maintenance series are included in this release, unless otherwise noted.

And there are too numerous small fixes to otherwise note here ;-)
----------------------------------------------------------------
Changes since v1.5.5 are as follows:
A Large Angry SCM (1):
      git-repack: re-enable parsing of -n command line option
Adam Roben (11):
      Add tests for git cat-file
      git-cat-file: Small refactor of cmd_cat_file
      git-cat-file: Make option parsing a little more flexible
      git-cat-file: Add --batch-check option
      git-cat-file: Add --batch option
      Move git-hash-object tests from t5303 to t1007
      Add more tests for git hash-object
      git-hash-object: Add --stdin-paths option
      Git.pm: Add command_bidi_pipe and command_close_bidi_pipe
      Git.pm: Add hash_and_insert_object and cat_blob
      git-svn: Speed up fetch
Adam Simpkins (15):
      Remove dead code: show_log() sep argument and diff_options.msg_sep
      log: print log entry terminator even if the message is empty
      revision API: split parent rewriting and parent printing options
      Add history graph API
      log and rev-list: add --graph option
      graph API: eliminate unnecessary indentation
      graph API: fix graph mis-alignment after uninteresting commits
      graph API: don't print branch lines for uninteresting merge parents
      log --graph --left-right: show left/right information in place of '*'
      Fix output of "git log --graph --boundary"
      get_revision(): honor the topo_order flag for boundary commits
      graph API: improve display of merge commits
      graph API: avoid printing unnecessary padding before some octopus merges
      graph API: fix "git log --graph --first-parent"
      git log --graph: print '*' for all commits, including merges
Alberto Bertogli (1):
      builtin-apply: Show a more descriptive error on failure when opening a patch
Alejandro Mery (1):
      git-am: head -1 is obsolete and doesn't work on some new systems
Alex Riesen (13):
      Use "=" instead of "==" in condition as it is more portable
      Fix use after free() in builtin-fetch
      Use the modern syntax of git-diff-files in t2002-checkout-cache-u.sh
      Improve reporting of errors in config file routines
      Make the exit code of add_file_to_index actually useful
      Extend interface of add_files_to_cache to allow ignore indexing errors
      Add --ignore-errors to git-add to allow it to skip files with read errors
      Add a test for git-add --ignore-errors
      Add a config option to ignore errors for git-add
      Ensure that a test is run in the trash directory
      Fix t6031 on filesystems without working exec bit
      Fix t3701 if core.filemode disabled
      Fix t5516 on cygwin: it does not like double slashes at the beginning of a path
Anders Waldenborg (1):
      gitweb: Convert string to internal form before chopping in chop_str
Andy Parkins (1):
      post-receive-email: fix accidental removal of a trailing space in signature line
Ariel Badichi (2):
      copy.c: copy_fd - correctly report write errors
      archive.c: format_subst - fixed bogus argument to memchr
Ask Bjørn Hansen (2):
      gitweb setup instruction: rewrite HEAD and root as well
      send-email: Allow the envelope sender to be set via configuration
Avery Pennarun (5):
      git-svn: add documentation for --use-log-author option.
      git-svn: Add --add-author-from option.
      git-svn: add documentation for --add-author-from option.
      git-svn: don't append extra newlines at the end of commit messages.
      git-svn: test that extra blank lines aren't inserted in commit messages.
Bart Trojanowski (1):
      make git-status use a pager
Björn Steinbrink (2):
      Fix section about backdating tags in the git-tag docs
      name-rev: Fix segmentation fault when using --all
Boyd Lynn Gerber (2):
      progress.c: avoid use of dynamic-sized array
      Port to 12 other Platforms.
Brandon Casey (8):
      filter-branch.sh: support nearly proper tag name filtering
      git-clone.txt: Adjust note to --shared for new pruning behavior of git-gc
      compat/fopen.c: avoid clobbering the system defined fopen macro
      repack: modify behavior of -A option to leave unreferenced objects unpacked
      git-gc: always use -A when manually repacking
      builtin-gc.c: deprecate --prune, it now really has no effect
      builtin-clone.c: Need to closedir() in copy_or_link_directory()
      t/Makefile: "trash" directory was renamed recently
Bryan Donlan (10):
      git-rebase.sh: Fix --merge --abort failures when path contains whitespace
      config.c: Escape backslashes in section names properly
      git-send-email.perl: Handle shell metacharacters in $EDITOR properly
      test-lib.sh: Add a test_set_editor function to safely set $VISUAL
      Use test_set_editor in t9001-send-email.sh
      test-lib.sh: Fix some missing path quoting
      lib-git-svn.sh: Fix quoting issues with paths containing shell metacharacters
      Don't use the 'export NAME=value' in the test scripts.
      Fix tests breaking when checkout path contains shell metacharacters
      Rename the test trash directory to contain spaces.
Caio Marcelo de Oliveira Filho (1):
      git-format-patch: add --no-binary to omit binary changes in the patch.
Carlos Rica (2):
      Fix documentation syntax of optional arguments in short options.
      core-tutorial.txt: Fix showing the current behaviour.
Chris Frey (2):
      Documentation/git-prune.txt: document unpacked logic
      Documentation/git-repack.txt: document new -A behaviour
Chris Parsons (1):
      Updated status to show 'Not currently on any branch' in red
Chris Ridd (1):
      Improve sed portability
Christian Couder (32):
      bisect: add "git bisect help" subcommand to get a long usage string
      bisect: fix bad rev checking in "git bisect good"
      bisect: report bad rev better
      bisect: squelch "fatal: ref HEAD not a symref" misleading message
      git-bisect: make "start", "good" and "skip" succeed or fail atomically
      help: use man viewer path from "man.<tool>.path" config var
      documentation: help: add "man.<tool>.path" config variable
      help: use "man.<tool>.cmd" as custom man viewer command
      documentation: help: add info about "man.<tool>.cmd" config var
      documentation: web--browse: add a note about konqueror
      rev-parse: teach "--verify" to be quiet when using "-q" or "--quiet"
      rev-parse: fix --verify to error out when passed junk after a good rev
      Documentation: hooks: fix missing verb in pre-applypatch description
      Documentation: rename "hooks.txt" to "githooks.txt" and make it a man page
      Documentation: improve "add", "pull" and "format-patch" examples
      Documentation: bisect: add a few "git bisect run" examples
      bisect: print an error message when "git rev-list --bisect-vars" fails
      rev-parse: add test script for "--verify"
      rev-parse: fix using "--default" with "--verify"
      rev-parse --verify: do not output anything on error
      Documentation: rev-parse: add a few "--verify" and "--default" examples
      bisect: add test cases to check that "git bisect start" is atomic
      bisect: fix left over "BISECT_START" file when starting with junk rev
      bisect: trap critical errors in "bisect_start"
      bisect: use a detached HEAD to bisect
      Documentation: convert tutorials to man pages
      bisect: use "$GIT_DIR/BISECT_START" to check if we are bisecting
      Documentation: convert "glossary" and "core-tutorial" to man pages
      documentation: convert "diffcore" and "repository-layout" to man pages
      documentation: move git(7) to git(1)
      documentation: bisect: remove bits talking about a bisection branch
      Documentation: RelNotes-1.5.6: talk about renamed HTML files
Christian Engwer (1):
      git-svn fails in prop_walk if $self->{path} is not empty
Christian Stimming (3):
      git-gui: Update German translation
      gitk: Update German translation
      gitk: German translation again updated
Clemens Buchacher (2):
      Reset the signal being handled
      http-push: remove remote locks on exit signals
Clifford Caoile (2):
      Docs gitk: Explicitly mention the files that gitk uses (~/.gitk)
      git.el: Set process-environment instead of invoking env
Dan McGee (4):
      completion: allow 'git remote' subcommand completion
      completion: remove use of dashed git commands
      Allow cherry-pick (and revert) to add signoff line
      Remove 'header' from --signoff option description
Daniel Barkalow (14):
      Fix config key miscount in url.*.insteadOf
      Make walker.fetch_ref() take a struct ref.
      Make ls-remote http://... list HEAD, like for git://...
      Mark the list of refs to fetch as const
      Add a lockfile function to append to a file
      Add a library function to add an alternate to the alternates file
      Have a constant extern refspec for "--tags"
      Allow for having for_each_ref() list extra refs
      Add a function to set a non-default work tree
      Provide API access to init_db()
      Build in clone
      clone: fall back to copying if hardlinking fails
      Test that --reference actually suppresses fetching referenced objects
      Use nonrelative paths instead of absolute paths for cloned repositories
Dirk Suesserott (2):
      Documentation/git-request-pull: Fixed a typo ("send" -> "end")
      Documentation/git-mailsplit: Enhanced description of -o option
Dmitry Potapov (2):
      git-gc --prune is deprecated
      git-init: autodetect core.ignorecase
Dmitry V. Levin (1):
      builtin-fetch.c (store_updated_refs): Honor update_local_ref() return value
Dustin Sallings (3):
      Documentation/config.txt: Mention branch.<name>.rebase applies to "git pull"
      Allow tracking branches to set up rebase by default.
      Allow tracking branches to set up rebase by default.
Eric Wong (1):
      git-svn: fix cloning of HTTP URLs with '+' in their path
Flavio Poletti (1):
      git-instaweb: improve auto-discovery of httpd and call conventions.
Florian Ragwitz (1):
      filter-branch: Documentation fix.
Frank Lichtenheld (4):
      var: Don't require to be in a git repository.
      Git.pm: Don't require a repository instance for config
      Git.pm: Don't require repository instance for ident
      send-email: Don't require to be called in a repository
Fred Maranhão (1):
      fix typo in tutorial
Geoffrey Irving (1):
      doc: adding gitman.info and *.texi to .gitignore
Gerrit Pape (7):
      gitweb: fallback to system-wide config file if default config does not exist
      gitweb: fallback to system-wide config file (fixup)
      diff-options.txt: document the new "--dirstat" option
      gitk: Makefile/install: force permissions when installing files and dirs
      git-bisect.sh: don't accidentally override existing branch "bisect"
      Documentation/git-bundle.txt: fix synopsis
      commit --interactive: properly update the index before commiting
Govind Salinas (1):
      pretty.c: add %x00 format specifier.
Gustaf Hendeby (6):
      git-svn: Make create-ignore use git add -f
      Documentation: Add create-ignore to git svn manual
      Documentation/config.txt: Add git-gui options
      Documentation: Add missing git svn commands
      Documentation: Fix skipped section level
      Make git add -n and git -u -n output consistent
Heikki Orsila (8):
      Make core.sharedRepository more generic
      Document functions xmemdupz(), xread() and xwrite()
      Die for an early EOF in a file reading loop
      Make read_in_full() and write_in_full() consistent with xread() and xwrite()
      Cleanup xread() loops to use read_in_full()
      Add missing "short" alternative to --date in rev-list-options.txt
      Add log.date config variable
      Remove redundant code, eliminate one static variable
Horst H. von Brand (1):
      Fix recipient santitization
Ian Hilt (1):
      Documentation/git-describe.txt: make description more readable
Imran M Yousuf (1):
      Use '-f' option to point to the .gitmodules file
Jakub Narebski (7):
      gitweb: Fix 'history' view for deleted files with history
      gitweb: Use feed link according to current view
      gitweb: Remove gitweb/test/ directory
      gitweb: Fix "next" link on bottom of page
      gitweb: Add charset info to "raw" output of 'text/plain' blobs
      gitweb: Make it work with $GIT containing spaces
      Use 'trash directory' thoroughly in t/test-lib.sh
Jamis Buck (1):
      git-reset: honor -q and do not show progress message
Jeff King (30):
      add--interactive: ignore mode change in 'p'atch command
      add--interactive: allow user to choose mode update
      git-fetch: fix status output when not storing tracking ref
      git-fetch: always show status of non-tracking-ref fetches
      git-remote: show all remotes with "git remote show"
      Don't force imap.host to be set when imap.tunnel is set
      t5516: remove ambiguity test (1)
      doc/git-gc: add a note about what is collected
      push: allow unqualified dest refspecs to DWIM
      remote: create fetch config lines with '+'
      fix reflog approxidate parsing bug
      cvsimport: always pass user data to "system" as a list
      Documentation: point git-prune users to git-gc
      add merge.renamelimit config option
      bump rename limit defaults
      diff: make "too many files" rename warning optional
      checkout: don't rfc2047-encode oneline on detached HEAD
      doc: clarify definition of "update" for git-add -u
      fix bsd shell negation
      t5000: tar portability fix
      clone: bsd shell portability fix
      filter-branch: fix variable export logic
      doc/git-daemon: s/uploadarchive/uploadarch/
      git-am: fix typo in usage message
      send-email: specify content-type of --compose body
      send-email: rfc2047-quote subject lines with non-ascii characters
      clone: make sure we support the transport type
      Fix "git clone http://$URL" to check out the worktree when asked
      document --pretty=tformat: option
      clean up error conventions of remote.c:match_explicit
Johan Herland (5):
      Add a test for another combination of --reference
      Add test for cloning with "--reference" repo being a subset of source repo
      cpio is no longer used by git-clone
      Consistency: Use "libcurl" instead of "cURL library" and "curl"
      The "curl" executable is no longer required
Johannes Schindelin (12):
      Provide git_config with a callback-data parameter
      builtin-clone: fix initial checkout
      cvsexportcommit: chomp only removes trailing whitespace
      diff options: Introduce --ignore-submodules
      Teach update-index about --ignore-submodules
      Ignore dirty submodule states during rebase and stash
      cvsexportcommit: introduce -W for shared working trees (between Git and CVS)
      submodule update: add convenience option --init
      pull --rebase: exit early when the working directory is dirty
      mailsplit and mailinfo: gracefully handle NUL characters
      hg-to-git: add --verbose option
      merge-recursive: respect core.autocrlf when writing out the result
Johannes Sixt (11):
      Document option --only of git commit
      builtin-commit.c: Remove a redundant assignment.
      git-gui: Report less precise object estimates for database compression
      compat-util: avoid macro redefinition warning
      wt-status.h: declare global variables as extern
      rev-parse --symbolic-full-name: don't print '^' if SHA1 is not a ref
      t5700-clone-reference: Quote $U
      Revert "filter-branch: subdirectory filter needs --full-history"
      rebase --interactive: Compute upstream SHA1 before switching branches
      make_nonrelative_path: Use is_absolute_path()
      Remove exec bit from builtin-fast-export.c
John J. Franey (1):
      Clarify description of <repository> argument to pull/fetch for naming remotes.
Jon Loeliger (4):
      Clarify and fix English in "git-rm" documentation
      Add otherwise missing --strict option to unpack-objects summary.
      git-filter-branch: Clarify file removal example.
      git-show.txt: Not very stubby these days.
Jonas Fonseca (1):
      git-remote: reject adding remotes with invalid names
Junio C Hamano (80):
      Optimize rename detection for a huge diff
      t5300: add test for "unpack-objects --strict"
      unpack-objects: fix --strict handling
      rebase [--onto O] A B: omit needless checkout
      sha1-lookup: more memory efficient search in sorted list of SHA-1
      diff: make --dirstat binary-file safe
      sha1-lookup: make selection of 'middle' less aggressive
      log: teach "terminator" vs "separator" mode to "--pretty=format"
      Document -w option to shortlog
      Documentation/git-submodule: typofix
      git_config_bool_or_int()
      t7401: squelch garbage output
      write_index(): optimize ce_smudge_racily_clean_entry() calls with CE_UPTODATE
      diff-files: mark an index entry we know is up-to-date as such
      Fix git_config_bool_or_int
      rebase: do not munge commit log message
      git-am: minor cleanup
      am: POSIX portability fix
      GIT 1.5.5.1
      First batch of post 1.5.5 updates
      write-tree: properly detect failure to write tree objects
      clone: detect and fail on excess parameters
      fetch-pack: brown paper bag fix
      diff: a submodule not checked out is not modified
      diff-lib.c: rename check_work_tree_entity()
      is_racy_timestamp(): do not check timestamp for gitlinks
      git-svn: add test for --add-author-from and --use-log-author
      builtin-apply: typofix
      builtin-apply: accept patch to an empty file
      builtin-apply: do not declare patch is creation when we do not know it
      unpack-trees: allow Porcelain to give different error messages
      "git-add -n -u" should not add but just report
      tests: do not use implicit "git diff --no-index"
      diff-files: do not play --no-index games
      "git diff": do not ignore index without --no-index
      mailinfo: apply the same fix not to lose NULs in BASE64 and QP codepaths
      mailsplit: minor clean-up in read_line_with_nul()
      Update draft release notes for 1.5.6
      log --graph: do not accept log --graphbogus
      log --pretty: do not accept bogus "--prettyshort"
      Release Notes for 1.5.5.2
      Documentation/git.txt: link to 1.5.5.2 documentation.
      Makefile: fix dependency on wt-status.h
      show-branch --current: do not barf on detached HEAD
      git-diff: allow  --no-index semantics a bit more
      git diff --no-index: default to page like other diff frontends
      GIT 1.5.5.3
      t5100: Avoid filename "nul"
      Git::cat_blob: allow using an empty blob to fix git-svn breakage
      fix sha1_pack_index_name()
      Manual subsection to refer to other pages is SEE ALSO
      Documentation: git-cherry uses git-patch-id
      "git checkout -- paths..." should error out when paths cannot be written
      checkout: make reset_clean_to_new() not die by itself
      checkout: consolidate reset_{to_new,clean_to_new}()
      unpack_trees(): allow callers to differentiate worktree errors from merge errors
      checkout: "best effort" checkout
      commit: drop duplicated parents
      GIT v1.5.6-rc1
      t7502: do not globally unset GIT_COMMITTER_* environment variables
      t7502: tighten loosely written test sequence
      Documentation: git-log cannot use rev-list specific options
      t7502: honor SHELL_PATH
      GIT 1.5.5.4
      GIT 1.5.6-rc2
      http-push.c: remove duplicated code
      "remote prune": be quiet when there is nothing to prune
      Documentation/git-pull.txt: Use more standard [NOTE] markup
      Documentation: exclude @pxref{[REMOTES]} from texinfo intermediate output
      user-manual: describe how higher stages are set during a merge
      t4126: fix test that happened to work due to timing
      sha1_file.c: dead code removal
      GIT 1.5.6-rc3
      Makefile: update check-docs target
      Update RPM spec to drop curl executable requirement
      diff.c: fix emit_line() again not to add extra line
      create_tempfile: make sure that leading directories can be accessible by peers
      sha1_file.c: simplify parse_pack_index()
      builtin-rerere: fix a small leak
      GIT 1.5.6
Jörg Sommer (1):
      post-merge: Add it's not executed if merge failed.
Karl Hasselström (3):
      Add some tests for git update-ref -d
      Fix path duplication in git svn commit-diff
      Revert "git.el: Set process-environment instead of invoking env"
Kevin Ballard (1):
      Documentation/git-filter-branch.txt: Fix description of --commit-filter
Krzysztof Kowalczyk (1):
      alloc_ref_from_str(): factor out a common pattern of alloc_ref from string
Lars Hjemli (8):
      Add platform-independent .git "symlink"
      Teach resolve_gitlink_ref() about the .git file
      Teach git-submodule.sh about the .git file
      Teach GIT-VERSION-GEN about the .git file
      git-branch: add support for --merged and --no-merged
      git-branch.txt: compare --contains, --merged and --no-merged
      Add tests for `branch --[no-]merged`
      revision.c: really honor --first-parent
Lea Wiemann (13):
      gitweb: only display "next" links in logs if there is a next page
      t/test-lib.sh: resolve symlinks in working directory, for pathname comparisons
      Git.pm: fix documentation of hash_object
      glossary: improve a few links
      Git.pm: fix return value of config method
      cat-file --batch: flush stdout also when objects are missing
      git-for-each-ref.txt: minor improvements
      t1006-cat-file.sh: typo
      cat-file --batch / --batch-check: do not exit if hashes are missing
      Documentation/git-cat-file.txt: add missing line break
      t/.gitattributes: only ignore whitespace errors in test files
      gitweb: quote commands properly when calling the shell
      gitweb: remove unused parse_ref method
Linus Torvalds (22):
      Make unpack_trees_options bit flags actual bitfields
      Move name hashing functions into a file of its own
      Make "index_name_exists()" return the cache_entry it found
      Make hash_name_lookup able to do case-independent lookups
      Add 'core.ignorecase' option
      Make branch merging aware of underlying case-insensitive filsystems
      Make unpack-tree update removed files before any updated files
      When adding files to the index, add support for case-independent matches
      Make git-add behave more sensibly in a case-insensitive environment
      Ignore leading empty lines while summarizing merges
      git-am: cope better with an empty Subject: line
      Optimize match_pathspec() to avoid fnmatch()
      fetch-pack: do not stop traversing an already parsed commit
      Avoid some unnecessary lstat() calls
      Optimize symlink/directory detection
      Make pack creation always fsync() the result
      Remove now unnecessary 'sync()' calls
      Consolidate SHA1 object file close
      Avoid cross-directory renames and linking on object creation
      Make loose object file reading more careful
      Simplify and rename find_sha1_file()
      write_loose_object: don't bother trying to read an old object
Liu Yubao (1):
      Documentation on --git-dir and --work-tree
Luciano Rocha (1):
      git-init: accept --bare option
Marcel Koeppen (2):
      Replace in-place sed in t7502-commit
      Fix prepare-commit-msg hook and replace in-place sed
Marius Storm-Olsen (3):
      Clearify the documentation for core.ignoreStat
      Add shortcut in refresh_cache_ent() for marked entries.
      Add testcase for merging in a CRLF repo
Mark Hills (1):
      Be more careful with objects directory permissions on clone
Mark Levedahl (2):
      git-submodule - possibly use branch name to describe a module
      git-submodule - Fix errors regarding resolve_relative_url
Martin Koegler (3):
      unpack-objects: prevent writing of inconsistent objects
      receive-pack: allow using --strict mode for unpacking objects
      t5300: add test for "index-pack --strict"
Matt Graham (1):
      Linked glossary from cvs-migration page
Matthew Ogilvie (4):
      gitattributes: Fix subdirectory attributes specified from root directory
      git-cvsserver: add mechanism for managing working tree and current directory
      implement gitcvs.usecrlfattr
      git-cvsserver: add ability to guess -kb from contents
Matthias Kestenholz (1):
      Use color.ui variable in scripts too
Matthieu Moy (2):
      Document that WebDAV doesn't need git on the server, and works over SSL
      git-svn: detect and fail gracefully when dcommitting to a void
Michael Dressel (1):
      describe: match pattern for lightweight tags too
Michael Weber (1):
      svn-git: Use binmode for reading/writing binary rev maps
Michele Ballabio (6):
      revision.c: make --date-order overriddable
      gitk: Disable "Reset %s branch to here" when on a detached head
      gitk: Move es.po where it belongs
      builtin-cat-file.c: use parse_options()
      change quoting in test t1006-cat-file.sh
      Documentation: fix graph in git-rev-parse.txt
Mikael Magnusson (1):
      Typo in RelNotes.
Mike Hommey (1):
      Don't allocate too much memory in quote_ref_url
Mike Ralphson (1):
      Makefile: update the default build options for AIX
Miklos Vajna (19):
      git-gc --auto: add pre-auto-gc hook
      Documentation/hooks: add pre-auto-gc hook
      contrib/hooks: add an example pre-auto-gc hook
      diff options documentation: refer to --diff-filter in --name-status
      git checkout: add -t alias for --track
      git-format-patch: add a new format.cc configuration variable
      git-send-email: add a new sendemail.cc configuration variable
      Add tests for sendemail.cc configuration variable
      INSTALL: add a note about GNU interactive tools has been renamed
      git-fast-import: rename cmd_*() functions to parse_*()
      git-merge: exclude unnecessary options from OPTIONS_SPEC
      CodingGuidelines: Add a note to avoid assignments inside if()
      Revision walking documentation: document most important functions
      Strbuf documentation: document most functions
      Remove unused code in parse_commit_buffer()
      git-rebase -i: mention the short command aliases in the todo list
      git-read-tree: document -v option.
      run-command documentation: fix "memset()" parameter
      path-list documentation: document all functions and data structures
Nicolas Pitre (10):
      pack-objects: small cleanup
      pack-objects: remove some double negative logic
      pack-objects: simplify the condition associated with --all-progress
      pack-objects: clean up write_object() a bit
      pack-objects: move compression code in a separate function
      pack-objects: allow for early delta deflating
      pack-objects: fix early eviction for max depth delta objects
      add a force_object_loose() function
      let pack-objects do the writing of unreachable objects as loose objects
      make verify-pack a bit more useful with bad packs
Olivier Marin (5):
      remote show: fix the -n option
      builtin-remote: split show_or_prune() in two separate functions
      remote prune: print the list of pruned branches
      remote show: list tracked remote branches with -n
      Fix approxidate("never") to always return 0
Paolo Bonzini (3):
      Add a remote.*.mirror configuration option
      add special "matching refs" refspec
      rollback lock files on more signals than just SIGINT
Paul Mackerras (41):
      gitk: Use git log without --topo-order and reorganize the commits ourselves
      gitk: Fix bug in assigning row numbers to arcs
      gitk: Fix bug in parsing multiple revision arguments
      gitk: Compute row numbers and order tokens lazily
      gitk: Fix a couple of bugs
      gitk: Fix more bugs resulting in Tcl "no such element in array" errors
      gitk: More bug fixes and cleanups
      gitk: Implement date mode in the new framework
      gitk: Fix another collection of bugs
      gitk: Don't try to show local changes from a head that isn't shown
      gitk: Keep the same commits visible as other commits come in
      gitk: Fix some corner cases in the targetid/targetrow stuff
      gitk: Fix a couple of bugs in the find function
      gitk: Fix potential bug with fake commit IDs in renumbervarc
      gitk: Index [fnvr]highlights by id rather than row
      gitk: Fix handling of flag arguments
      gitk: Fix a bug in make_disporder
      gitk: Select head of current branch by default
      gitk: Select something appropriate on cherry-pick, branch reset and checkout
      gitk: Fix bug where editing an existing view would cause an infinite loop
      gitk: Fix bug causing Tcl error when no commits are selected
      gitk: Fix cherry-picking to insert a real row not a fake row
      gitk: Cope better with getting commits that we have already seen
      gitk: Fix bug where arcs could get lost
      gitk: Handle updating with path limiting better
      gitk: Fix problems with target row stuff
      gitk: Don't filter view arguments through git rev-parse
      gitk: Correct a few strings and comments to say "git log"
      gitk: Fix some corner cases in computing vrowmod and displayorder
      gitk: Avoid a crash in selectline if commitinfo($id) isn't set
      gitk: Fix problem with target row not being in scroll region
      gitk: Reorganize processing of arguments for git log
      gitk: Fix handling of tree file list with special chars in names
      gitk: Make updates go faster
      gitk: Synchronize highlighting in file view for 'f' and 'b' commands
      gitk: Show current row number and total number of rows
      gitk: Add a progress bar for checking out a head
      gitk: Fix "wrong # coordinates" error on reload
      gitk: Fix bug where current row number display stops working
      gitk: Fix bug introduced by "gitk: Fix "wrong # coordinates" error on reload"
      gitk: Handle detached heads better
Paul Oliver (1):
      Make git-cvsimport remove ['s from tags, as bad_ref_char doesn't allow them.
Pedro Melo (1):
      Force the medium pretty format on calls to git log
Peter Karlsson (1):
      gitk: Initial Swedish translation.
Philippe Bruhat (BooK) (1):
      git-cvsimport: do not fail when CVSROOT is /
Pierre Habouzit (1):
      Make git reflog expire honour core.sharedRepository.
Pieter de Bie (2):
      builtin-fast-export: Only output a single parent per line
      git-send-email: allow whitespace in addressee list
Ping Yin (6):
      git-submodule: Avoid 'fatal: cannot describe' message
      git-submodule summary: --for-status option
      builtin-status: submodule summary support
      builtin-status: Add tests for submodule summary
      t4027: test diff for submodule with empty directory
      Add t7506 to test submodule related functions for git-status
Rafael Garcia-Suarez (1):
      Spelling fixes in the gitweb documentation
René Scharfe (2):
      git-archive: ignore prefix when checking file attribute
      Ignore .gitattributes in bare repositories
Richard Quirk (2):
      bash: Add completion for gitk --merge
      Documentation gitk: Describe what --merge does
SZEDER Gábor (8):
      doc: moved merge.* config variables into separate merge-config.txt
      merge, pull: introduce '--(no-)stat' option
      add 'merge.stat' config variable
      fmt-merge-msg: add '--(no-)log' options and 'merge.log' config variable
      merge, pull: add '--(no-)log' command line option
      git add: add long equivalents of '-u' and '-f' options
      completion: add more 'git add' options
      diff: reset color before printing newline
Sam Vilain (1):
      Amend git-push refspec documentation
Santi Béjar (3):
      Preparation to call determine_author_info from prepare_to_commit
      commit: Show author if different from committer
      commit: Show committer if automatic
Santiago Gala (1):
      gitk: Spanish translation of gitk
Scott Collins (1):
      Clarify documentation of git-cvsserver, particularly in relation to git-shell
Sebastian Schuberth (1):
      mergetool: Make ECMerge use the settings as specified by the user in the GUI
Seth Falcon (1):
      Add a --dry-run option to git-svn rebase
Shawn Bohrer (2):
      git clean: Don't automatically remove directories when run within subdirectory
      git clean: Add test to verify directories aren't removed with a prefix
Shawn O. Pearce (13):
      git-gui: Don't use '$$cr master' with aspell earlier than 0.60
      git-gui: Setup branch.remote,merge for shorthand git-pull
      git-gui: Delete branches with 'git branch -D' to clear config
      git-gui: Add a --trace command line option
      git-gui: Handle workdir detection when CYGWIN=nowinsymlinks
      Clarify repack -n documentation
      Don't diff empty tree on branch creation in paranoid update hook
      Don't load missing ACL files in paranoid update hook
      Ignore no-op changes in paranoid update hook
      Remove unused remote_prefix member in builtin-remote
      Make "git-remote prune" delete refs according to fetch specs
      Make "git-remote rm" delete refs acccording to fetch specs
      fast-export: Correctly generate initial commits with no parents
Sitaram Chamarty (1):
      builtin-commit.c: add -u as short name for --untracked-files
Steffen Prohaska (4):
      t0050: Test autodetect core.ignorecase
      t0050: Set core.ignorecase case to activate case insensitivity
      t0050: Add test for case insensitive add
      t0050: Fix merge test on case sensitive file systems
Stephan Beyer (9):
      builtin-apply.c: use git_config_string() to get apply_default_whitespace
      Add test cases for git-am
      Merge t4150-am-subdir.sh and t4151-am.sh into t4150-am.sh
      git-commit.txt: Correct option alternatives
      git-commit.txt: Add missing long/short options
      Docs: Use "-l::\n--long\n" format in OPTIONS sections
      Docs: add some long/short options
      git-describe.txt: document --always
      git-name-rev.txt: document --no-undefined and --always
Stephen R. van den Berg (2):
      Simplify and fix --first-parent implementation
      git-svn: Same default as cvsimport when using --use-log-author
Steven Grimm (1):
      Add svn-compatible "blame" output format to git-svn
Teemu Likonen (3):
      bash: Add completion for git diff --base --ours --theirs
      Documentation/git-web--browse.txt: fix small typo
      Print info about "git help COMMAND" on git's main usage pages
Thomas Arcila (1):
      gitk: Allow users to view diffs in external diff viewer
Thomas Guyot-Sionnest (1):
      git-svn bug with blank commits and author file
Trent Piepho (1):
      cvsexportcommit: Create config option for CVS dir
Twiinz (1):
      git-gui: Vertically align textboxes with labels
martin f. krafft (2):
      Escape project name in regexp
      Escape project names before creating pathinfo URLs
Next: Junio C Hamano
Message 1 of 15 in “[ANNOUNCE] GIT 1.5.6”
  1. Junio C HamanoJun 18, 2008
  2. A note from the maintainerJunio C Hamano, Jun 19, 2008
  3. 'next' will be rewound shortlyJunio C Hamano, Jun 19, 2008
  4. Stephan BeyerJun 27, 2008
  5. Miklos VajnaJun 27, 2008
  6. Stephan BeyerJun 27, 2008
  7. Miklos VajnaJun 27, 2008
  8. Junio C HamanoJun 27, 2008
  9. Miklos VajnaJun 27, 2008
  10. Stephan BeyerJun 27, 2008
  11. Junio C HamanoJun 28, 2008
  12. A note from the maintainerJunio C Hamano, Jul 14, 2008
  13. Steffen ProhaskaJun 22, 2008
  14. [ANNOUNCE] GIT 1.5.6.1Junio C Hamano, Jun 26, 2008
  15. Steffen ProhaskaJul 1, 2008

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.