a port to javascript of the git scm runs on node