move commit, signature, and message to own package
Created by: camdencheek
This PR moves git.Commit
, git.Message
, and git.Signature
to their own subpackage internal/vcs/git/api
.
Motivation: Transitive dependency thinning. These types are used widely across our application, and importing them adds all the dependencies of internal/vcs/git
, which is many (see go list -f '{{ .Deps }}' ./internal/vcs/git
). This has been causing some pain trying to avoid circular dependencies between packages that really shouldn't depend on each other, and moving these into their own package will help alleviate that.