Implement rev-list --objects for tree and blob traversal
commit0644b345edc12273e8d07cb472ee58a044cfaab0
authorShawn O. Pearce <spearce@spearce.org>
Thu, 15 May 2008 01:24:59 +0000 (14 21:24 -0400)
committerShawn O. Pearce <spearce@spearce.org>
Sat, 17 May 2008 03:59:49 +0000 (16 23:59 -0400)
treef9dda2f80c34962dde5e2df28786cfa13c920ba8
parent9d3a8e0a325e3c2c12d5302a85a618e8d6ae59a5
Implement rev-list --objects for tree and blob traversal

To verify connectivity and pack file generation we need to produce a
complete list of objects reachable from one or more starting points.

The new ObjectWalk class supports doing that by tracking which
RevTrees are associated with a RevCommit that we returned to the
application, and then also walk through those tree objects and
return them, including any referenced blob or subtree that were
also not yet returned.

Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
org.spearce.jgit/src/org/spearce/jgit/pgm/Glog.java
org.spearce.jgit/src/org/spearce/jgit/pgm/RevList.java
org.spearce.jgit/src/org/spearce/jgit/pgm/RevWalkTextBuiltin.java
org.spearce.jgit/src/org/spearce/jgit/revwalk/BlockObjQueue.java [new file with mode: 0644]
org.spearce.jgit/src/org/spearce/jgit/revwalk/ObjectWalk.java [new file with mode: 0644]
org.spearce.jgit/src/org/spearce/jgit/revwalk/RevWalk.java
org.spearce.jgit/src/org/spearce/jgit/revwalk/StartGenerator.java