Skip to content
This repository has been archived by the owner on Aug 8, 2023. It is now read-only.

Merge release branch into master

Jason Wray edited this page Jun 27, 2018 · 3 revisions

Git workflow.

  • git checkout master
  • git pull
  • git checkout -b [user]-merge-release-[tag version] e.g. git checkout -b fabian-merge-release-ios-v3.6.0
  • git checkout [release branch]
  • git pull
  • git checkout [user]-merge-relase-[tag version] e.g. git checkout fabian-merge-release-ios-v3.6.0
  • git merge [tag] e.g. git merge ios-v3.6.0

Conflict resolution.

It is likely you will encounter merge conflicts the solving strategy would be:

  • For core gl files (*.hpp & *.cpp) prefer master version.
  • For Android and iOS files (*.java, *.graddle, *.xml, *.h, *.m, *.mm) manual merge, prioritize release changes.

Merge test.

Before making a PR use the following commands to test the merge.

  • Core gl

    • make test
    • make run-test
  • Android

    • make android-check
  • iOS & macOS

    • make iproj
    • Select iosapp click run.
    • make xproj
    • Select macosapp click run.

Pull Request.

If above tests passed.

  • git push origin [user]-merge-relase-[tag version] e.g. git push origin fabian-merge-release-ios-v3.6.0
  • Ping each team member whose changes will be affected by this merge.

Final merge.

Once the PR is approved.

  • git checkout master
  • git pull
  • git merge [user]-merge-relase-[tag version] e.g. git merge fabian-merge-release-ios-v3.6.0
  • git push origin master
  • git branch -D [user]-merge-relase-[tag version] e.g. git branch -D fabian-merge-release-ios-v3.6.0

Merging using github is discouraged.

In any case do not use squash and merge option as this will break git history and introduce orphaned commits.

Troubleshooting.

Android.

Error message:

* What went wrong:
Execution failed for task ':MapboxGLAndroidSDK:lint'.
> Lint found errors in the project; aborting build.

What went wrong: There are missing translations.

Solution: Notify the Android team.

Clone this wiki locally