On (git) branching strategies

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 simple: update master, branch off, fix stuff, send PR. With most ROS projects you first have to 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.

2 Likes