Git development
 help / color / mirror / Atom feed
From: Junio C Hamano <junkio@cox.net>
To: Linus Torvalds <torvalds@osdl.org>
Cc: git@vger.kernel.org
Subject: plumbing pull request
Date: Wed, 04 May 2005 02:22:36 -0700	[thread overview]
Message-ID: <7vll6vpcpv.fsf@assigned-by-dhcp.cox.net> (raw)

Linus, please pull from http://members.cox.net/junkio/git-jc.git/
which contains the following changes.

----------------------------------------------------------------

  Optimize diff-cache -p --cached

  This patch optimizes "diff-cache -p --cached" by avoiding to
  inflate blobs into temporary files when the blob recorded in the
  cache matches the corresponding file in the work tree.  The file
  in the work tree is passed as the comparison source in such a
  case instead.

  This optimization kicks in only when we have already read the
  cache this optimization and this is deliberate.  Especially,
  diff-tree does not use this code, because changes are contained
  in small number of files relative to the project size most of
  the time, and reading cache is so expensive for a large project
  that the cost of reading it outweighs the savings by not
  inflating blobs.

  Also this patch cleans up the structure passed from diff clients
  by removing one unused structure member.

----------------------------------------------------------------

  Terminate diff-* on non-zero exit from GIT_EXTERNAL_DIFF

  (slightly updated from the version posted to the GIT mailing list
  with small bugfixes).

  This patch changes the git-apply-patch-script to exit non-zero when
  the patch cannot be applied.  Previously, the external diff driver
  deliberately ignored the exit status of GIT_EXTERNAL_DIFF command,
  which was a design mistake.  It now stops the processing when
  GIT_EXTERNAL_DIFF exits non-zero, so the damages from running
  git-diff-* with git-apply-patch-script between two wrong trees can be
  contained.

  The "diff" command line generated by the built-in driver is changed to
  always exit 0 in order to match this new behaviour.  I know Pasky does
  not use GIT_EXTERNAL_DIFF yet, so this change should not break Cogito,
  either.

----------------------------------------------------------------

  Git-prune-script loses blobs referenced from an uncommitted cache.

  (updated from the version posted to GIT mailing list).

  When a new blob is registered with update-cache, and before the cache
  is written as a tree and committed, git-fsck-cache will find the blob
  unreachable.  This patch adds a new flag, "--cache" to git-fsck-cache,
  with which it keeps such blobs from considered "unreachable".

  The git-prune-script is updated to use this new flag.  At the same time
  it adds .git/refs/*/* to the set of default locations to look for heads,
  which should be consistent with expectations from Cogito users.

  Without this fix, "diff-cache -p --cached" after git-prune-script has
  pruned the blob object will fail mysteriously and git-write-tree would
  also fail.

----------------------------------------------------------------

  Short-cut error return path in git-local-pull.

  When git-local-pull with -l option gets ENOENT attempting to create
  a hard link, there is no point falling back to other copy methods.
  With this patch, git-local-pull detects such a case and gives up
  copying the file early.

----------------------------------------------------------------

  Make git-*-pull say who wants them for missing objects.

  This patch updates pull.c, the engine that decides which objects are
  needed, given a commit to traverse from, to report which commit was
  calling for the object that cannot be retrieved from the remote side.
  This complements git-fsck-cache in that it checks the consistency of
  the remote repository for reachability.

----------------------------------------------------------------


             reply	other threads:[~2005-05-04  9:16 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2005-05-04  9:22 Junio C Hamano [this message]
  -- strict thread matches above, loose matches on Subject: below --
2005-05-05  6:07 Plumbing pull request Junio C Hamano

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=7vll6vpcpv.fsf@assigned-by-dhcp.cox.net \
    --to=junkio@cox.net \
    --cc=git@vger.kernel.org \
    --cc=torvalds@osdl.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox