android';s回购工具知道每个回购使用哪个分支机构?

android';s回购工具知道每个回购使用哪个分支机构?,android,git,android-source,repo,Android,Git,Android Source,Repo,谷歌的repo工具用于将所有android存储库克隆到正确的位置。它从.xml文件中读取存储库,如下所示: 然而,回购如何知道将其克隆的每个存储库放在哪个分支中?.xml上没有提交/分支信息 例如,它只是说 <project path="device/google/bonito-sepolicy" name="device_google_bonito-sepolicy" groups="device,bonito" remot

谷歌的repo工具用于将所有android存储库克隆到正确的位置。它从.xml文件中读取存储库,如下所示:

然而,回购如何知道将其克隆的每个存储库放在哪个分支中?.xml上没有提交/分支信息

例如,它只是说

  <project path="device/google/bonito-sepolicy" name="device_google_bonito-sepolicy" groups="device,bonito" remote="grapheneos" />

对于此存储库。有些存储库(比如这一个)只有一个分支,但有些(大部分来自谷歌)有很多分支。并不是所有的都是
master
上的更新

那么,它是如何工作的呢?

清单(不包括
.repo/local_manifests
中的清单)是
default.xml
,在您的例子中,它有一个
default
元素

<default revision="refs/tags/android-11.0.0_r27"
           remote="aosp"
           sync-j="4" />

如果
项目
元素没有自己的
修订版
上游
,则使用
默认
元素中的元素
revision=“refs/tags/android-11.0.0r27”
。其他属性也是如此。
project
也没有自己的
remote
sync-j
,因此使用了
default
中的那些

有关更多详细信息,请阅读
.repo/repo/docs
下的文档