First off: cool!<p>A few thoughts:<p>* This only works with Git. It doesn't look it'd be much work to make it work for all 4.<p>* This only pins deps you've declared; that set may or may not contain transitive deps. If it's not complete, the transitive deps will be frozen, forever, until you blow them out of your GOPATH.<p>* Issue #3 looks fun.
On first glance this looks similar to a pubspec.yaml file in Dart. Maybe you could borrow ideas from there.<p>It seems like for a business you'd also want to download your dependencies and check them in, in case the original repo isn't available.