PGit is a library for accessing Git repositories written in pure PHP. Instead of using the normal fork-exec to query git repositories, PGit reads git's object files directly. The PGit library is licensed under the MIT and is free for commercial and personal use.
- Only PHP v5.3 or greater
- Pure PHP 5 object-oriented implementation.
- Can read Commit, Tree, and Blob objects.
- Supports reading from pack files and applying OFS deltas.
- Verifies all hashes for consistency checks.
- Open-Source and free for commercial and personal use.
- Test suite to help protect against regressions.
The API is VERY far from being stable and will change a lot over time.
- Since PGit is very early in it's development, many things are not yet implemented.
- Doesn't support 64-Bit offsets in pack files. Most pack files aren't going to be this large, even the linux kernel is only ~750MB. This may be possible on 64-Bit OS's and will be investigated in the future.
- Missing support for ref deltas
I would like to encourage anyone to contribute any sort of code, suggestions, or issue reports.