Usage: ./lineage/scripts/aosp-merger/aosp-merger.sh [merge|rebase] <oldaosptag> <newaosptag> Change-Id: I6663e51ee22d7ea262ef634ed5e33c189ee1c2d6
1.6 KiB
1.6 KiB
Rough workflow
-
Snapshot the names of your current working branches to
branches.listfile:./lineage/scripts/aosp-merge/branches_save.sh -
Note current aosp tag in
.repo/manifests/default.xml, update it to desired new tag and then create a local commit for the change (aosp-merge script checks for any uncommitted changes in the.repo/manifestsgit repo). -
Create a staging branch and merge in the new AOSP tag:
./lineage/scripts/aosp-merge/aosp-merge.sh merge \<oldaosptag> \<newaosptag>(where oldaosptag is the original AOSP tag that was in
.repo/manifests/default.xml)-
Example invocation:
./lineage/scripts/aosp-merge/aosp-merge.sh merge android-8.0.0_r3 android-8.0.0_r30
-
-
Every project in your tree should now be one of:
- <newaosptag> if the project was tracking AOSP
- a staging branch if the project was a LineageOS fork from AOSP (check
merged_repos.txtfor status and whether there are conflicts to resolve) - the default repo lineage branch for
.repo/manifests/snippets.xmlprojects
-
Restore your local branches and merge in the staging branch:
./lineage/scripts/aosp-merge/branches_rebase.sh \<nameofstagingbranch>-
Example invocation:
./lineage/scripts/aosp-merge/branches_rebase.sh staging/lineage-15.0_merge-android-8.0.0_r30
-
-
Build, install, boot, verify, etc.
TODO
- Make it work for rebase (I'm sure it'll need fixups).
- Create squashed gerrits for each merge.
- Abandon squashed gerrits and push each merge automatically.
- DONE. Instead of merging the staging branch into your local branch (if you have one), create a new branch for the local+staging merge.