Functions
2.1 Annotated Commit
2.2 Blame
2.3 Blob
2.4 Branch
2.5 Buffer
2.6 Checkout
2.7 Cherrypick
2.8 Clone
2.9 Commit
2.10 Config
2.11 Credentials
2.12 Describe
2.13 Diff
2.14 Fetch
2.15 Filter
2.16 Errors
2.17 Graph
2.18 Ignore
2.19 Index
2.20 Indexer
2.21 Global
2.22 Merge
2.23 Message
2.24 Note
2.25 Object
2.26 Object Database
2.27 Oid
2.28 Oid Array
2.29 Packbuilder
2.30 Patch
2.31 Pathspec
2.32 Proxy
2.33 Push
2.34 Rebase
2.35 Refdb
2.36 Reference
2.37 Reflog
2.38 Refspec
2.39 Remote
2.40 Repository
2.41 Reset
2.42 Revert
2.43 Revparse
2.44 Revwalk
2.45 Signature
2.46 Stash
2.47 Status
2.48 Strarray
2.49 Submodule
2.50 Tag
2.51 Tree
2.52 Treebuilder
On this page:
git_  indexer_  append
git_  indexer_  commit
git_  indexer_  free
git_  indexer_  hash
git_  indexer_  new
7.7

2.20 Indexer

 (require libgit2/include/indexer) package: libgit2

procedure

(git_indexer_append idx data size stats)  integer?

  idx : indexer?
  data : bytes?
  size : integer?
  stats : git_transfer_progress?
Add data to the indexer

procedure

(git_indexer_commit idx stats)  integer?

  idx : indexer?
  stats : transfer_progress?
Finalize the pack and index

Resolve any pending deltas and write out the index file

procedure

(git_indexer_free idx)  void?

  idx : indexer?
Free the indexer and its resources

procedure

(git_indexer_hash idx)  oid?

  idx : indexer?
Get the packfile’s hash

A packfile’s name is derived from the sorted hashing of all object names. This is only correct after the index has been finalized.

procedure

(git_indexer_new path    
  int    
  odb    
  progress_cb    
  progress_cb_payload)  indexer?
  path : string?
  int : unsigned
  odb : (or/c odb? #f)
  progress_cb : git_transfer_progress_cb
  progress_cb_payload : bytes?
Create a new indexer instance