远程的`git grep`实际上是通过网络搜索的吗?

ijxebb2r  于 2023-04-04  发布在  Git
关注(0)|答案(1)|浏览(114)

在远程计算机上使用git grep实际上是搜索远程系统,还是搜索存储在本地计算机上的分支?

git grep 'huntfor' 'refs/remotes/origin/main'

git grep 'huntfor' $(git ls-remote . 'refs/remotes/*' | ForEach-Object {($_ -split "`t")[1]})
rdlzhqv9

rdlzhqv91#

git grep只搜索工作树和索引,除非你指定了修订版本,因此,它通常只搜索你本地机器上的文件和修订版本。如果你的仓库没有修订版本,那么你就不能搜索它。

  • 但是 *,如果您使用的是部分克隆,您的存储库可能包含来自某个远程的promisor包(称为promisor remote),在这种情况下,Git会假装它有这些对象,如果它们丢失了,就按需下载它们。在这种情况下,如果你有一个promisor对象,用于你请求的特定版本,Git可能会连接到promise remote来填充相关的对象。但是,远程上的其他更改(例如自git fetchgit pull以来发生的更改)仍然无法访问。

相关问题