1、生成当前repo 的 manifest.xml 配置,是一个管理android sdk的一个用法,主要是为了在修改了android sdk 各个git时,统一生成一个manifest.xml 来替换修改之前的manifest.xml,以便版本管理并上传修改代码到repo 服务器。 生成的方法如下:
.repo/repo/repo manifest -o manifest_new.xml -r
再将生成的manifest.xml 替换.repo/manifests 目录下的相应xml文件,即可。
2、以rk3288为例生成manifest_new.xml:
seven@seven:/media/rk3288/android-7.1$ .repo/repo/repo manifest -o manifest_new.xml -r Saved manifest to manifest_new.xml seven@seven:/media/rk3288/android-7.1$
3、查看当前repo 链接的配置文件是哪一个:
seven@seven:/media/rk3288/android-7.1$ ls -ahl .repo/ total 76K drwxr-xr-x 7 seven seven 4.0K 5月 20 10:47 . drwxr-xr-x 37 seven seven 4.0K 5月 20 10:53 .. drwxr-xr-x 10 seven seven 4.0K 4月 3 16:35 manifests drwxr-xr-x 10 seven seven 4.0K 3月 31 15:37 manifests.git lrwxrwxrwx 1 seven seven 42 4月 3 16:34 manifest.xml -> manifests/rk3288_tablet_nougat_release.xml -rw-r--r-- 1 seven seven 12K 4月 3 16:46 project.list drwxr-xr-x 4 seven seven 4.0K 9月 21 2018 project-objects drwxr-xr-x 34 seven seven 4.0K 9月 21 2018 projects drwxr-xr-x 7 seven seven 4.0K 9月 20 2018 repo -rw-r--r-- 1 seven seven 34K 4月 3 16:46 .repo_fetchtimes.json
不难看出,manifest.xml链接的xml文件是rk3288_tablet_nougat_release.xml, 所以把manifest_new.xml 替换rk3288_tablet_nougat_release.xml,使用cp指令进行替换:
cp manifest_new.xml .repo/manifests/rk3288_tablet_nougat_release.xml
4、替换之后即可查看修改了哪些git,如下:
seven@seven:/media/rk3288/android-7.1$ cd .repo/manifests seven@seven:/media/rk3288/android-7.1/.repo/manifests$ git diff diff --git a/rk3288_tablet_nougat_release/rk3288_tablet_nougat_v2.13_20200321.xml b/rk3288_tablet_nougat_release/rk3288_tablet_nougat_v2.13_20200321.xml index d2b11c1..ec3245f 100644 --- a/rk3288_tablet_nougat_release/rk3288_tablet_nougat_v2.13_20200321.xml +++ b/rk3288_tablet_nougat_release/rk3288_tablet_nougat_v2.13_20200321.xml @@ -6,7 +6,7 @@ <default remote="aosp" revision="refs/tags/android-7.1.2_r6" sync-j="4"/> - <project name="android/RKTools" path="RKTools" remote="rk" revision="15c01a9e3dd8a728389ec15a45f4de833081fcef" upstream="rk3288/mid/android-7.1"/> + <project name="android/RKTools" path="RKTools" remote="rk" revision="7a15e340a3fcbf7fe4f8d000915f8bf99289acb0" upstream="rk3288/mid/android-7.1"/> - <project groups="pdk,tradefed" name="android/platform/build" path="build" remote="rk" revision="44b2016608d115dcdfda33d7d1ad020b9b2d72d9" upstream="rk33/mid/7.0/develop"> + <project groups="pdk,tradefed" name="android/platform/build" path="build" remote="rk" revision="8cbe74fecd29363f2d93d97f8170884e8ed39f6a" upstream="rk33/mid/7.0/develop">
以上git diff的地方就是修改的git仓库。