【问题标题】:How to properly run repo sync after forking AOSP manifest?分叉 AOSP 清单后如何正确运行 repo sync?
【发布时间】:2016-04-04 00:03:26
【问题描述】:

最近我决定深入 Android 开源项目世界。这就是我对 AOSP 生活的想象:

为了深入了解 AOSP 世界,我需要亲自动手修改项目中的代码。我将在三台不同的计算机上执行此操作,因此我需要将我的工作存储在远程 git 存储库中。因此,我需要在我自己的 github 帐户中分叉 AOSP 清单并以此为基础工作。

稍后说我尝试使用框架项目,然后我需要将该项目分叉到我自己的 github 帐户中:

<project path="frameworks/base" name="platform/frameworks/base" groups="pdk-cw-fs,pdk-fs" />

理想情况下,当我进行本地 repo 同步时,框架/基础项目将从我自己的 github 帐户获取,所有其他项目将从 google git repo 获取。

这是我在行动中所做的:

我想做的是将 AOSP manifest git repo 分叉到我的 github 并从那里开始工作。然后我做:

repo sync -u git@github.com:my_own_github_account/platform_manifest.git

然后我做:

repo sync

但是我在控制台中收到了很多错误,例如:

fatal: remote error: 
  my_own_github_account/platform/external/libopus is not a valid repository name
  Email support@github.com for help

似乎 repo 会假设项目将来自与清单项目相同的基础。我不确定如何正确使用分叉清单进行 repo 同步。

此外,我不确定我尝试开始 AOSP 工作的方式是愚蠢还是不专业。如果是这样,如果您能指出正确的做法,我将不胜感激。提前致谢。

【问题讨论】:

    标签: android-source android-build repo


    【解决方案1】:

    实际上我在这里发现这篇文章几乎完美地回答了我的问题:https://www.primianotucci.com/blog/fork-android-on-github

    我无法进行 repo 同步的原因是因为 repo 文件中的这一行:

    <remote  name="aosp"
               fetch=".."
               review="https://android-review.googlesource.com/" />
    

    这两个点表示获取相对于 repo manifest 项目本身的项目。这就是 repo 尝试从 my_own_github_account 同步的原因

    然后我改成

      <remote  name="aosp"
               fetch="https://android.googlesource.com" />
    

    然后 repo 同步正常工作。

    如果我想从自己的 github 帐户同步特定项目怎么办?

    当然,您需要将该项目镜像到您自己的 github 帐户。然后像这样修改清单文件:

    将此行添加到清单文件:

     <remote name="origin" fetch="https://github.com/my_own_github_account" />
    

    名称是您要用于自己的子项目的远程获取源。

    然后添加这个:

    <project path="frameworks/base" name="platform/base"
                remote="origin" revision="your_default_revision" />
    

    请注意,为了覆盖默认的远程获取源,您需要添加remote="origin"

    然后当您执行repo sync 时,repo 将从您自己的 github 帐户获取框架/基础,并从 google 源获取其他项目。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-10-03
      • 2011-07-11
      • 1970-01-01
      • 2021-11-07
      相关资源
      最近更新 更多