ares-emulator / ares

ares is a cross-platform, open source, multi-system emulator, focusing on accuracy and preservation.
https://ares-emu.net
Other
939 stars 114 forks source link

ares development should use a development branch #1263

Closed milnak closed 3 months ago

milnak commented 11 months ago

Currently all ares development occurs in main. It would be nice if there were a development branch so that validated releases could be built off main, and daily releases could be built off of the development branch. This does require pushing development to main occasionally for release, but this is a typical process.

hackgrid commented 11 months ago

On the Github releases page you find the commit used for creating a specific release. You can then check this commit and rebuild for yourself.

edit: or you could just checkout the release tag.

I personally would recommend always building the latest commit / using the latest nightly.

milnak commented 11 months ago

Understood, but more traditionally, one would enlist in develop and git pull to keep up with the latest.

But, hey, I haven't contributed to this project, so do what's best for you all.

Screwtapello commented 11 months ago

The traditional "release/development" branch split is mostly used in commercial development, where you want to have most developers working away on the next version, but occasionally want to make a new bugfix release from the release branch to solve a customer problem (this is why the Half Life 1 engine is called "GoldSrc" and the Half Life 2 engine is called "Source").

However, ares doesn't have customers, and it definitely doesn't change so quickly enough to warrant a separate development branch - if a showstopper bug is found soon after release, there probably haven't been any major changes since the last release, so just make a new release. If a showstopper bug is found a long time after the last release, well, it's probably about time for a new release anyway.

Even for commercial development, having separate "release" and "development" branches is sometimes seen as a bad idea.

Tartifless commented 11 months ago

Having a "dev" branch is generally counter-productive. The main/master branch is the one that should be updated on the go.

milnak commented 11 months ago

Lots of opinions, of course. The author of the article linked above has a follow up, where he brings up my concern. See "“You have to look at tags to get the latest production version” at https://www.endoflineblog.com/follow-up-to-gitflow-considered-harmful

And again this is a suggestion. I don't currently contribute to this project, so does not much point turning this into a religious debate, in my opinion. If maintainer of this project disagrees, he should just close this as won't fix.

LukeUsher commented 3 months ago

Closing as a wontfix: master will remain the latest code; releases as tags.