Skip to content

hal_tdk: align upstream and fork repos with 1:1 commit match #95479

@gjabouley-invn

Description

@gjabouley-invn

Summary

Hello

This is a follow-up of Discord message and great answers

We maintain a modest hal_tdk to support our company sensors on Zephyr.

Upstream repository is located in our public GitHub org, code review is performed there, and PRs are merged using "Squash & Merge" option, for max history linearity.

Zephyr fork repo is located in Zephyr GitHub org. We used (last time was 7 months ago) to publish new changes by opening a PR from upstream:main to zephyr-fork:main, then merging using "Create Merge Commit" option.

Seems around 6 months ago, linear history has been enforced on Zephyr org repos, resulting in PR can only be merged using "Rebase & Merge" option. This is creating issue during syncs, see zephyrproject-rtos/hal_tdk#10 for example.

There is not real need for a Code Review in the fork, at least for changes coming directly from our upstream repository, as Code Review and testing are done internally and in the upstream repo.

Describe the solution you'd like

To prevent future sync issues, we would like to be able to directly push from upstream:main to zephyr-fork:main branch, having a 1:1 commit matching (same as for MCUBoot, at our humble level of course ^^)

Proposed one-time actions to resync:

Prerequisite: temporarily grant force-push permission on zephyr-rtos/hal_tdk main branch to @afontaine-invn (project maintainer)

  1. in zephyr-fork, create a zephyr-fork:v4.2-branch branch pointing to latest commit referenced by a Zephyr commit (https://github.com/zephyrproject-rtos/zephyr/blob/main/west.yml#L253), ie. zephyrproject-rtos/hal_tdk@6727477
  2. Push this branch, so any old commits are retained and not gc
  3. Align zephyr-fork:main and upstream:main branches on the latest upstream commit tdk-invn-oss/zephyr.hal_tdk@343f68e
  4. Force-push zephyr-fork:main

Proposed sync flow for later changes:

Prerequisite: grant push permission on zephyr-rtos/hal_tdk main branch to @afontaine-invn (project maintainer)

  1. Maintainer of hal_tdk can perform simple "merge --ff-only && push" on the fork:main whenever changes are ready to be published.
  2. Once workflows: Add workflow for syncing module with upstream infrastructure#266 is ready and repos are in sync, we could also benefit from this improvement.

FYI @afontaine-invn

Alternatives

No response

Additional Context

No response

Metadata

Metadata

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions