Godep还原不使用_workspace中保存的代码

时间:2015-02-24 18:24:29

标签: go dependency-management

我刚刚开始使用godep,但我认为我没有理解校长,而且我可能完全错误地使用它。

我认为godep维护_workspace以便拥有包的本地副本,以防某些修订/项目被删除或变得不可用。但godep restore似乎根本没有使用_workspace

此外,第二次致电godep save并未_workspace更新Godeps.json

我错过了什么?


更新:

为了解释我的问题,我将Godeps.json中的一个修订版更改为无效版本" 1"然后跑godep restore。这是我得到的错误:

$GOPATH/bin/godep restore
# cd /home/iliga/gopath/src/github.com/jinzhu/gorm; git pull --ff-only
From https://github.com/jinzhu/gorm 
a97a508..087b708  master     -> origin/master
You are not currently on a branch. Please specify which
branch you want to merge with. See git-pull(1) for details.

git pull <remote> <branch>

# cd /home/iliga/gopath/src/github.com/jinzhu/gorm; git checkout 1
error: pathspec '1' did not match any file(s) known to git.
godep: restore: exit status 1

如上所述,我希望没有错误,并且godep只需从_workspace复制代码。

1 个答案:

答案 0 :(得分:2)

&#34; godep restore&#34;不使用_workspace。它读取Godeps.json并检查您对GOPATH的依赖。

要使用_workspace,请运行以godep为前缀的go命令,例如&#34; godep go build&#34;,&#34; godep go test&#34;。