3 ms·
I use GitHub because that's where PRs go, but I've never liked their PR model. I much prefer the Phabricator/Gerrit ability to consider each commit independent
by bsimpson 8mo ago
I use GitHub because that's where PRs go, but I've never liked their PR model. I much prefer the Phabricator/Gerrit ability to consider each commit independently (that is, have a personal branch 5 commits ahead of HEAD, and be able to send PRs for each without having them squashed).
I wonder if federation will also bring more diversity into the actual process. Maybe there will be hosts that let you use that Phabricator model.
I also wonder how this all gets paid for. Does it take pockets as deep as Microsoft's to keep npm/GitHub afloat? Will there be a free, open-source commons on other forges?
- JoshTriplett 8mo agoPersonally, I'd like to go the other way: not just that PRs are the unit of contribution, but that rebased PRs are a first-class concept and versioning of the changes between entire PRs is a critical thing to track.
- viraptor 8mo agoThis is coming to GH soonish. Some clunky alpha version of this UI has been shared on the bad social site. (First class rebasing / stacked PRs)
- debugnik 8mo ago> and be able to send PRs for each without having them squashed Can't you branch off from their head and cherry-pick your commits?
- bsimpson 8mo agoThat's effectively what I do. I have my dev branch, and then I make separate branches for each PR with just the commit in it. Works well enough so long as the commits are independent, but it's still a pain in the ass to manage.
- techcode 8mo agoPerhaps I'm missing something... If your commits are not all independent - I don't see how could they ever be pulled/merged independently?
- JoshTriplett 8mo agoThe way Gerrit handles this is to make a series of PR-like things that are each dependent on the previous one. The concept of "PR that depends on another PR" is a really useful one, and I wish forges supported it better.
- mbreese 8mo agoThat’s the trick in your system — all commits have to be completely independent. Generally mine aren’t, so unless we want to review each minor commit, they get squashed. I can see merit in your suggestion, but it does require some discipline in practice. I’m not sure I could do it.
- Twisell 8mo agoUnless I misunderstood your workflow Forgejo Agit approach mentioned in OP might already cover that. You can push any ref not necessarily HEAD. So as long as you send commit in order from a rebase on main it should be ok unless I got something wrong from the doc? https://forgejo.org/docs/latest/user/agit-support/ https://forgejo.org/docs/latest/user/agit-support/