可能你当前的工作区里什么都没有
//...
取决于任何目标
@gtest//...
,所以跑步
bazel fetch //...
不会告诉Bazel它需要下载
@gtest
是的。
$ bazel fetch //...
Extracting Bazel installation...
Starting local Bazel server and connecting to it...
...........
$
如果你想逃跑
bazel fetch @gtest//...
它将直接按预期下载存档:
$ bazel fetch @gtest//...
INFO: SHA256 (https://github.com/google/googletest/archive/release-1.7.0.zip) = b58cb7547a28b2c718d1e38aee18a3659c9e3ff52440297e965f5edffe34b6d0
Building: no action
现在,如果添加一个依赖于
@gtest//:main
然后跑
火箭筒取货//…
再次下载
@GTEST公司
以下内容:
$ bazel clean --expunge
INFO: Starting clean (this may take a while). Consider using --async if the clean takes more than several minutes.
$ cat BUILD
filegroup(
name = "gtest",
srcs = ["@gtest//:main"],
)
$ bazel fetch //...
Starting local Bazel server and connecting to it...
..........
INFO: SHA256 (https://github.com/google/googletest/archive/release-1.7.0.zip) = b58cb7547a28b2c718d1e38aee18a3659c9e3ff52440297e965f5edffe34b6d0
Building: no action
$ ls $(bazel info output_base)/external
bazel_tools @bazel_tools.marker gtest @gtest.marker local_config_cc @local_config_cc.marker