We have to track patches for unnamed-sdvx-clone here because the upstream repo uses submodules.
- Fetch the desired tag from unnamed-sdvx-clone (e.g.
git fetch https://github.com/Drewol/unnamed-sdvx-clone.git v0.6.0
). - Switch to
FETCH_HEAD
(git checkout FETCH_HEAD
). - Recursively update submodules (
git submodule update --init --recursive
). - Recursively remove
.gitattributes
files,.gitignore
files,.gitmodules
files and.git
directories except the one in the top-level (find . \( -name .gitattributes -o -name .gitignore -o -name .gitmodules \) -delete; find . -name .git
, note that.git
directories have to be manually removed). - Remove the subproject attribute of submodule folders from git (
git submodule | awk '{print $2}' | xargs git rm --cached
). - Update the index using all files in the entire working tree (
git add -A
). - Make a soft reset to the tarball branch (
git reset --soft tarball
). - Redo step 6, then create a new commit with message of
chore: import v$VER
(git commit -m "chore: import v$VER"
). - Create a lightweight tag with name of
v$VER
(git tag "v$VER"
). - Push the
tarball
branch and the tag just created to the remote (git push; git push --tags
). - Create a new branch with name of
aosc/v$VER
, pointing to the currentHEAD
, then switch to it (git checkout -b "aosc/v$VER"
). - Apply all needed commits and/or patches.
- Create a lightweight tag with name of
aosc/v$PKGEPOCH%$PKGVER-$PKGREL
(git tag "aosc/v$PKGEPOCH%$PKGVER-$PKGREL"
). If any of these variables equals zero, omit the related section and the corresponding separator. For the definition of these variables, refer to autobuild4. - Push the
aosc/v$VER
branch and the tag just created to the remote (git -c "push.autoSetupRemote=true" push; git push --tags
). - Prepare patches for the ABBS tree (
git format-patch "tags/v$VER..tags/aosc/v$PKGEPOCH%$PKGVER-$PKGREL"
).