str0m icon indicating copy to clipboard operation
str0m copied to clipboard

On Git practises

Open thomaseizinger opened this issue 1 year ago • 0 comments

I wanted to get a discussion started on how Git is used in str0m. Currently, there doesn't seem to be a consistent handling of how main is updated:

  • Sometimes, commits are pushed directly to main
  • Sometimes, PRs are merged using merge-commits
  • Sometimes, PRs are merged with forward-merges

We are maintaining a fork of str0m that diverges in several ways from upstream. For example, it has changes that might have already open PRs, or changes that are still considered controversial. It also has changes that we had to revert (like #508) because they caused problems for us.

Maintaining this fork (especially with reverts) is difficult without a consistent handling of updates to main. I'd like to ask if we can move to:

  1. Always make changes to main via PRs
  2. Always merge those PRs via merge-commits or squash-merging

Personally, I find squash-merging cleaner because it results in a nicer history on main and makes it really easy to revert things. I do understand that not everybody is a fan of squash-merging so I am also fine with merge-commits.

Essentially, what I am asking is to avoid direct pushes to main and forward-merges of PRs.

thomaseizinger avatar May 21 '24 00:05 thomaseizinger