git.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCHv2 0/8] Make rev-list --objects work with pathspecs; minor optimizations
@ 2010-08-26  6:21 Elijah Newren
  2010-08-26  6:21 ` [PATCHv2 1/8] Add testcases showing how pathspecs are ignored with rev-list --objects Elijah Newren
                   ` (8 more replies)
  0 siblings, 9 replies; 10+ messages in thread
From: Elijah Newren @ 2010-08-26  6:21 UTC (permalink / raw)
  To: git; +Cc: gitster, pclouds, Elijah Newren

This series enables rev-list to produce a list of objects that is path
limited, when the user requests it.  It also provides a few small code
cleanups and some small optimizations.

Changes since last round:
  * Patch 1 has two new testcase; one that triggered a bug I found,
    and an interesting case Junio mentioned needed to work.
  * Patch 2 will have fewer mallocs/frees in some cases (a suggestion
    from Nguyen Thai Ngoc Duy), and corrects an issue from the first
    series with how it calls tree_entry_interesting.
  * Patch 3 is new; it adds a simple code comment that would have
    alerted me to avoiding the bug in the first round of the series.
  * Patches 4-8 are unchanged.

As before, the last two patches are weatherballons.  They can be
silently dropped.

Updated timings, for the curious:
 A git rev-list --quiet HEAD
 B git rev-list --quiet HEAD -- Documentation/
 C git rev-list --quiet HEAD -- t/
 D git rev-list --objects HEAD > /dev/null
 E git rev-list --objects HEAD -- Documentation/ > /dev/null
 F git rev-list --objects HEAD -- t/t9350-fast-export.sh > /dev/null
Results:
             A      B      C      D      E      F
maint       0.34   0.68   1.33   1.90   1.39   0.65
Patch-1     0.34   0.68   1.33   1.90   1.38   0.65
Patch-2     0.34   0.68   1.33   1.88   0.97   0.66
Patch-3     0.34   0.68   1.33   1.88   0.97   0.65
Patch-4     0.34   0.67   1.33   1.87   0.97   0.65
Patch-5     0.34   0.68   1.33   1.88   0.97   0.65
Patch-6     0.34   0.65   1.28   1.87   0.93   0.65
Patch-7     0.34   0.65   1.29   1.86   0.94   0.65
Patch-8     0.34   0.65   1.28   1.85   0.93   0.65



Elijah Newren (8):
  Add testcases showing how pathspecs are ignored with rev-list
    --objects
  Make rev-list --objects work together with pathspecs
  Document pre-condition for tree_entry_interesting
  tree-walk: Correct bitrotted comment about tree_entry()
  tree_entry_interesting(): Make return value more specific
  diff_tree(): Skip skip_uninteresting() when all remaining paths
    interesting
  list-objects.c: Avoid recomputing interesting-ness for subtrees when
    possible
  tree-diff.c: Avoid recomputing interesting-ness for subtrees when
    possible

 diff.h                   |    1 +
 list-objects.c           |   34 +++++++++++++++++++++++---
 revision.c               |    8 ++++-
 revision.h               |    3 +-
 t/t6000-rev-list-misc.sh |   51 +++++++++++++++++++++++++++++++++++++++
 tree-diff.c              |   60 +++++++++++++++++++++++----------------------
 tree-walk.h              |    4 ++-
 7 files changed, 124 insertions(+), 37 deletions(-)
 create mode 100755 t/t6000-rev-list-misc.sh

-- 
1.7.2.2.45.ga60f

^ permalink raw reply	[flat|nested] 10+ messages in thread

end of thread, other threads:[~2010-08-27 17:28 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2010-08-26  6:21 [PATCHv2 0/8] Make rev-list --objects work with pathspecs; minor optimizations Elijah Newren
2010-08-26  6:21 ` [PATCHv2 1/8] Add testcases showing how pathspecs are ignored with rev-list --objects Elijah Newren
2010-08-26  6:21 ` [PATCHv2 2/8] Make rev-list --objects work together with pathspecs Elijah Newren
2010-08-26  6:21 ` [PATCHv2 3/8] Document pre-condition for tree_entry_interesting Elijah Newren
2010-08-26  6:21 ` [PATCHv2 4/8] tree-walk: Correct bitrotted comment about tree_entry() Elijah Newren
2010-08-26  6:21 ` [PATCHv2 5/8] tree_entry_interesting(): Make return value more specific Elijah Newren
2010-08-26  6:21 ` [PATCHv2 6/8] diff_tree(): Skip skip_uninteresting() when all remaining paths interesting Elijah Newren
2010-08-26  6:21 ` [PATCHv2 7/8] list-objects.c: Avoid recomputing interesting-ness for subtrees when possible Elijah Newren
2010-08-26  6:21 ` [PATCHv2 8/8] tree-diff.c: " Elijah Newren
2010-08-27 17:28 ` [PATCHv2 0/8] Make rev-list --objects work with pathspecs; minor optimizations Junio C Hamano

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).