[ros-users] [Discourse.ros.org] [Quality Assurance] On (git) branching strategies

Maarten de Vries ros.discourse at gmail.com
Wed May 16 09:01:30 UTC 2018

[quote="gavanderhoorn, post:2, topic:4785"]

My experience is that PRs are expected to target the newest development branch and are then selected for backporting if it makes sense. PRs not targeting the latest branch will either be retargeted or rejected. At least, this is what I see in more mature repositories. ROS being as distributed / federated as it is, this may be different for the repositories that you see often.


This is indeed my experience as well, but many repositories still have `indigo-devel`, `kinetic-devel` and `melodic-devel` branches, even if only one of them is used to accept PRs. I found this confusing in the past and it's still bugging me from time to time.

The correct `devel` branch changes all the time. With most non-ROS projects the workflow for making a PR is simply: update master, branch off, fix stuff, send PR. With most ROS projects you also have to first check what the right `devel` branch is to split off from. Once you get used to it, it's not so much of a problem. But I know it was confusing to me at the start.

A small tweak here could make a big difference I think: remove the `-devel` prefix from the release branches, and have one `master`/`devel` branch that targets the latest supported ROS release for a specific project. This is much closer to a regular git workflow, so it should lower the entrance barrier for new developers.


[Visit Topic](https://discourse.ros.org/t/on-git-branching-strategies/4785/3) or reply to this email to respond.

More information about the ros-users mailing list