| Value | Meaning | 
|---|---|
| GIT_OK0 | No error  | 
| GIT_ERROR-1 | Generic error  | 
| GIT_ENOTFOUND-3 | Requested object could not be found  | 
| GIT_EEXISTS-4 | Object exists preventing operation  | 
| GIT_EAMBIGUOUS-5 | More than one object matches  | 
| GIT_EBUFS-6 | Output buffer too short to hold data  | 
| GIT_EUSER-7 | GIT_EUSER is a special error that is never generated by libgit2 code. You can return it from a callback (e.g to stop an iteration) to know that it was generated by the callback and not by libgit2.  | 
| GIT_EBAREREPO-8 | Operation not allowed on bare repository  | 
| GIT_EUNBORNBRANCH-9 | HEAD refers to branch with no commits  | 
| GIT_EUNMERGED-10 | Merge in progress prevented operation  | 
| GIT_ENONFASTFORWARD-11 | Reference was not fast-forwardable  | 
| GIT_EINVALIDSPEC-12 | Name/ref spec was not in a valid format  | 
| GIT_ECONFLICT-13 | Checkout conflicts prevented operation  | 
| GIT_ELOCKED-14 | Lock file prevented operation  | 
| GIT_EMODIFIED-15 | Reference value does not match expected  | 
| GIT_EAUTH-16 | Authentication error  | 
| GIT_ECERTIFICATE-17 | Server certificate is invalid  | 
| GIT_EAPPLIED-18 | Patch/merge has already been applied  | 
| GIT_EPEEL-19 | The requested peel operation is not possible  | 
| GIT_EEOF-20 | Unexpected EOF  | 
| GIT_EINVALID-21 | Invalid operation or input  | 
| GIT_EUNCOMMITTED-22 | Uncommitted changes in index prevented operation  | 
| GIT_EDIRECTORY-23 | The operation is not valid for a directory  | 
| GIT_EMERGECONFLICT-24 | A merge conflict exists and cannot continue  | 
| GIT_PASSTHROUGH-30 | A user-configured callback refused to act  | 
| GIT_ITEROVER-31 | Signals end of iteration with iterator  | 
| GIT_RETRY-32 | Internal only  | 
| GIT_EMISMATCH-33 | Hashsum mismatch in object  | 
| GIT_EINDEXDIRTY-34 | Unsaved changes in the index would be overwritten  | 
| GIT_EAPPLYFAIL-35 | Patch application failed  | 
Generic return codes