答案 0 :(得分:1)
好的,所以GoDeps可能是这样做的标准方式,但我通常觉得它有点复杂。在我看来,使用Makefile设置一个自定义GoPath并只包含你的代码的依赖(删除他们的.git文件夹)。这样版本冻结,没有人需要做godep restore
或类似的东西。
您可以制作make deploy
之类的食谱,用于构建代码,运行GoFmt,清理pkg文件,将其安装到自定义GoPath bin/
,然后您就可以运行二进制文件。
您可以使用另一个像make install
那样安装任何缺少的依赖项。
我已经设法在我的Makefile上使用它创建一个监视器,以便继续使用inotify-tools
在基于linux的系统上查找更改并调用rebuild。
内部所有命令都将使用标准go
命令,但您将摆脱GoDep并维护JSON。要升级依赖项,可能会有点问题,因为您必须手动将整个目录复制到自定义路径并删除.git /文件夹。
我们公司使用这种方法,似乎对我们来说非常好。
此外,这种方法基本上可以让你远离$GOPATH/src/github.com/repoName/
种路径。
如果我似乎不清楚,请告诉我,我将在github上添加一个要点。