没有VPS搭建govanityurls服务?别急!你依然可以自定义Go包导入路径
我们见到的Go包的导入路径常常以github.com、bitbucket.org等代码托管站点的域名为前缀,这样的包导入路径有一个问题,那就是当Go包的托管站点发生变更时(比如从github.om迁移到bitbucket.org或gitlab.com),该包的使用者需要更新包的导入路径。当然,在支持go module+GOPROXY的情况下,如果使用者不再升级包版本,他/她完全可以继续使用原包导入路径,但这仅是特例。 还有一些包的导入路径并非以知名代码托管站点域名作为前缀,比如:Go官方扩展包text,它的包导入路径是golang.org/x/text,这种包导入路径被称为vanity import path,字面义是虚荣心导入路径,即以个人或组织官方域名作为前缀的包导入路径。采用vanity import path的包避免了包迁移对包使用者的影响。包使用者完全无需关心包的实际存储位置是在github上还是在bitbucket上或是私有服务器上。同时将vanity import path作为包的权威路径(canonical import path),也方便go get等对包权威路径的检查,避免包路径变更的前后不一致。 ...