Gogit is a project mainly written in Go, it's free.
If I ever wanted to learn go programming, I would implement the git-core. Probably this is never going to happen.
GoGit may be a full implementation of git in the new language go. Its meant to be a useful practice session to learn about the ways of the go language.
Depending on how things evolve, it might one day be quite usable.