正在尝试使用Glide设置go项目。当我运行命令glide up -v时,我发现了错误Cannot detect VCS。
错误:
[ERROR] Error looking for project/base: Cannot detect VCS
[INFO] --> Fetching project/form
[WARN] Unable to checkout project/form
[ERROR] Error looking for project/form: Cannot detect VCS
[INFO] --> Fetching project/api
[WARN] Unable to checkout project/api
[ERROR] Error looking for project/api/request: Cannot detect VCS
[INFO] --> Fetching updates for github.com/go-openapi/analysis发布于 2019-05-01 02:21:04
我在使用Glide0.13.2和Go版本1.10.6和1.11.5的glide update上看到了类似的东西。
使用更详细的glide --debug update,我发现了更多的细节:
[DEBUG] ImportDir error on /Users/hayd/.glide/cache/src/https-crypto-tls: cannot find package "." in:
/Users/hayd/.glide/cache/src/https-crypto-tls但这确实让我查看了我的Git源文件夹- $GOPATH/src -其中有以下内容:
drwxr-xr-x 3 hayd staff 96 29 Mar 19:31 crypto这是一个包含一个空的子目录的目录:
drwxr-xr-x 2 hayd staff 64 29 Mar 19:33 tls所以这在某种程度上与--debug跟踪中显示的症状有关,即cannot find package ".",尽管它位于完全不同的位置。
一旦我做了rm -Rf $GOPATH/src/crypto,glide update就很管用了。
我之前曾和glide clear-cache和glide mirror一起进过兔子洞,这两个都是红色毒药。
希望这对其他有同样情况的人有所帮助:-)
发布于 2020-01-31 06:10:55
当我一开始依赖于https://时,我遇到了这个问题。我只是简单地删除了它,让它看起来像github.com/dependency,它解决了这个问题。
发布于 2021-07-06 14:15:03
我自己也经历过这个问题,我想在这里补充一下以供参考。
Go Version : go version go1.13.4 darwin/amd64
[DEBUG] Trying to open github.com/BurntSushi/toml (/Users/folder/.glide/cache/src/https-github.com-BurntSushi-toml)
[DEBUG] Package github.com/BurntSushi/toml imports io/fs
[DEBUG] Missing io/fs. Trying to resolve.
[INFO] --> Fetching io/fs
[WARN] Unable to checkout io/fs
[ERROR] Error looking for io/fs: Cannot detect VCS在运行glide --debug up命令时,我遇到了上面显示的错误。意识到问题出在toml dependency上,我手动从.cache文件夹中删除了文件夹https-github.com-BurntSushi-toml。
然后,我再次运行命令glide --debug up。我又一次遇到了同样的错误。我花了一段时间才意识到io/fs是go 1.16版本中的一个新功能。
这种情况下的问题是由于将程序包更新到最新版本。当我使用version 1.13时,最新版本的包需要一个go version 1.16。因此,我需要恢复到我之前在glide.lock中使用的旧版本的toml (我已经添加了一些依赖项,并希望在它们上运行更新,旧版本的toml包对我来说已经足够好了)。
error Cannot detect VCS是一个非常常见的错误,您可能需要查看该错误以了解发生了什么并进行相应的修复。
https://stackoverflow.com/questions/51722970
复制相似问题