Oid: avoid unnecessary copy

Going through GoByte() means we allocate and copy an extra slice that we
just use in order to call copy(). Use memcpy() instead to copy directly
from the git_oid to the Oid.
1 file changed
tree: 74ea5cf0e87df1d29dd8a8bf26f3576bf9a9b0fa
  1. .travis.yml
  3. README.md
  4. blob.go
  5. branch.go
  6. checkout.go
  7. clone.go
  8. clone_test.go
  9. commit.go
  10. config.go
  11. credentials.go
  12. git.go
  13. git_test.go
  14. index.go
  15. index_test.go
  16. object.go
  17. object_test.go
  18. odb.go
  19. odb_test.go
  20. packbuilder.go
  21. push.go
  22. push_test.go
  23. reference.go
  24. reference_test.go
  25. remote.go
  26. remote_test.go
  27. repository.go
  28. script/
  29. submodule.go
  30. tree.go
  31. walk.go
  32. wrapper.c


Go bindings for libgit2. These bindings are for top-of-the-branch libgit2, and they move fast, things may or may not work. Operator get me Beijing-jing-jing-jing!


Just go get github.com/libgit2/git2go. You'll need to have top-of-the-branch libgit2 from development installed in your system and available via pkg-config. These bindings are in sync with the top of development.


M to the I to the T. See the LICENSE file if you've never seen a MIT license before.


  • Carlos Martín (@carlosmn)
  • Vicent Martí (@vmg)