ihornehrutsa wrote: ↑Sat Oct 10, 2020 6:03 pm
I plan to contribute code to the ESP32 MicroPython port.
Excellent!
ihornehrutsa wrote: ↑Sat Oct 10, 2020 6:03 pm
1) Do Micropython authors use the git-flow development model?
Not exactly.
For one thing, there are never any "merge" commits in MicroPython. All commits from PRs are rebased onto the "master" branch.
I don't know much about "git-flow" specifically but it does sound a lot like what I've done when working with git (and GitHub) in a small repo where everyone on the team is a maintainer. i.e. exactly what you'd do for a private GitHub repo within a company working on a product.
This isn't at all how something like MicroPython works.
ihornehrutsa wrote: ↑Sat Oct 10, 2020 6:03 pm
I think that git-flow allows to decrease the number of opened Pull requests and reduce merge conflicts.
I don't know enough about git-flow to understand this. Each PR is (ideally) a separate contribution or feature. Why does git-flow help reduce the number of pull requests?
The model that MicroPython uses is really simple (and as I understand it, quite common to other open source projects on GitHub):
- Fork micropython/micropython to you/micropython
- Clone you/micropython as "origin" and micropython/micropython as "upstream"
- Start a new feature/fix by fetching upstream, then branching off upstream/master
- Push your branch to origin
- Raise a PR for your-branch from you/micropython against micropython/micropython
- Address review comments (either add new commits or modify existing commits)
- Re-push to origin
Periodically you might need to rebase your branch on upstream/master, but that's usually pretty straightforward. (And the only situations where it isn't would also be an issue for merging).
ihornehrutsa wrote: ↑Sat Oct 10, 2020 6:03 pm
2) From which branches built daily unstable firmware published on
"master".
Almost everything in micropython/micropython happens in master. All development happens in private forks.
Sadly it looks like the original author has abandoned it. If you're interested in continuing it then that would be excellent!
ihornehrutsa wrote: ↑Sat Oct 10, 2020 6:03 pm
To Damien George: Is it possible to create a branch 'feature\esp32_pwm' with applied PR#3608? Then I will create a Pull Request to that branch.
That's now how the project works unfortunately (or most open source projects as far as I understand). You can just create your own branch containing the same commits as 3608 (either add it as a remote or use the refs/pulls feature, then rebase on master), and then send that as a PR indicating that it is based on the work from 3608.