Iterator exactly determines which objects are included in a pack and order they appear in pack (except that objects order by type is not needed at input). This order should conform general rules of ordering objects in git - by recency and path (type and delta-base first is internally secured) and responsibility for guaranteeing this order is on a caller side. Iterator must return each id of object to write exactly once.
@param objectsSource iterator of object to store in a pack; order of objects within each type is important, ordering by type is not needed; allowed types for objects are {@link Constants#OBJ_COMMIT}, {@link Constants#OBJ_TREE}, {@link Constants#OBJ_BLOB} and{@link Constants#OBJ_TAG}; objects returned by iterator may be later reused by caller as object id and type are internally copied in each iteration. @throws IOException when some I/O problem occur during reading objects.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|