this post was submitted on 06 Nov 2023
274 points (98.6% liked)
Linux
48746 readers
1280 users here now
From Wikipedia, the free encyclopedia
Linux is a family of open source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991 by Linus Torvalds. Linux is typically packaged in a Linux distribution (or distro for short).
Distributions include the Linux kernel and supporting system software and libraries, many of which are provided by the GNU Project. Many Linux distributions use the word "Linux" in their name, but the Free Software Foundation uses the name GNU/Linux to emphasize the importance of GNU software, causing some controversy.
Rules
- Posts must be relevant to operating systems running the Linux kernel. GNU/Linux or otherwise.
- No misinformation
- No NSFW content
- No hate speech, bigotry, etc
Related Communities
Community icon by Alpár-Etele Méder, licensed under CC BY 3.0
founded 5 years ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
view the rest of the comments
None of what Brodie said is baseless, even if some are more opinion than fact. He sight's sources for a reason.
He's literally talking to the viewer the same way the vast majority of YouTubers speak, he's just Australian.
Cut the man some slack.
Right now, I'd say you're the one choosing to be obnoxious.
Because you're being obnoxious.
Caring this much about how some YouTuber speaks is literally obnoxious and portrays an attitude of self-importance.
🫴
I’m just curious, why are PRs worse on GitHub compared to other git hosting services?
Instead of using valid commit messages they just slap on "#42" which isn't valid anywhere other than the GitHub web UI.
Also, GitHub PRs atleast to me feel like they encourage reviewing changes by the total diff of the entire PR, and not each commit. I don't want a slog of commits that don't add any value - it just makes doing things like reverts more annoying. Stuff like Gerrit and phabricator enforce reviews by making you review individual commits / changes / whatever you want to call them and not branch diffs.
GitHub has an option when merging a PR to “squash and merge”. This option squashes all of the commits on the PR branch into a single commit and cherry-picks it on top of the base branch. We use this by default in our open source projects at work. Most people are not gonna go through the effort of making a well defined patch series the way it would be required for a Linux kernel contribution. Most changes aren’t that big though and so it doesn’t really matter. Send as many commits as you want in the PR, I’ll just review the diff as a whole and squash it when I’m done. Workflows should adapt to user preference, not the other way, and this is a good example of that.
How much of that is what GitHub encourages and how much of that is what Users prefer? Plenty of users seem to enjoy phabricator / Gerrit for code review in practice precisely because of their workflows.
Well squash and merge isn’t default or pushed in any way. It’s an option, and we chose to enable it ourselves because that’s what works best for us. It’s what works well for many other projects too, which is why many choose to enable it instead of the default merge commit.
Yeah, but phabricator and Gerrit are entirely separate workflows from GitHub, and a lot of people prefer that workflow because it leads to encouraging better histories and reviews. It helps you in getting rid of the "fixed typos" type of commits, while still letting you make larger PRs.
GitHub obviously does let you keep a clean git history, but the code review workflow in GH just doesn't encourage reviewing commits.
I think the idea here is that reviewing individual commits is irrelevant if the plan is just to squash it all down. Each PR corresponds to a single change on the main branch in the end, the fact there was a main commit followed by a half size “fixed typos” and “fixed bug” commits doesn’t actually matter since it will be blown away in the end. The process results in the same clean history with good individual commits on the main branch, just as if the user squashes those commits locally before pushing it up to the code review platform.
Right, but squashed commits don't scale for large PRs. You could argue that large PRs should be avoided, but sometimes they make sense. And in the case where you do have a large PR, a commit by commit review makes a lot of sense to keep your history clean.
Large features that are relatively isolated from the rest of the codebase make perfect sense to do in a different branch before merging it in - you don't merge in half broken code. Squashing a large feature into one commit gets rid of any useful history that branch may have had.
I agree, and GitHub allows choosing how to merge each PR individually if you need to do something different for a specific PR. Large PRs like that are at most 1% of our total PRs, and we review those more per-commit and use a merge commit instead of a squash. By default we optimize for the other 99%.
... which is part of why they aren't using GitHubs pull request feature to land changes?
Meaning they're planning/considering to in the future.
That is not what that means
You should try being a native English reader.
What it means is "they will not be accepting pull requests at this time." Whether or not they are open to changing this in the future is not specified. They have not specifically stated that this is off the table, nor have they stated this is their intent.
No. They're just not publicly saying it's off the table. Whether they're entertaining it internally is a totally different question.
Okay? Is this supposed to change something?
How does the opinion of your supposed internal contact at mozilla affect the basic English interpretation of the public announcement?
You're quite the lunatic. I'm obviously not defending GitHub PRs, or saying Mozilla should or should not use them. I said "we are not open to PRs at this time" is not the same as "we will be open to PRs in the future." The truth of that statement has absolutely nothing to do with whether or not Mozilla is, in fact, open to using PRs in the future. But there's no point in telling you that, because you're clearly unhinged. Have a good life.
And I'm sure you've got a long history of submitting patches to Firefox given your strong opinions on the process Mozilla uses to manage this?
Nobody here needs "a long history of submitting patches to Firefox" to have an opinion on the tools used to manage the project. I assume that most here sharing their opinion don't and yet you need not scroll far. You merely need some knowledge and experience with the tools, be it in personal, corporate, FOSS, etc. projects. Besides I don't spend my free time helping FOSS projects just to use it to be like "my opinion better" that's literally just the "appeal to authority fallacy". But if you must know, I have helped here and there throughout the years under various different aliases/accounts. (Why "various aliases"? because I enjoy helping not some meaningless credit, it's just how I am.)
So what you are saying is that as someone who has never worked on the Firefox codebase, you still somehow know more about managing contributions to one of the largest FOSS projects in the world that has been running pretty successfully for the last 25 years?
Idk, maybe try a bit of humility - like if it looks like they are making a weird decision, maybe it's not because they are dumb and you are very smart, maybe it's because they know stuff that you don't?
First off, not what I said.
Second off, I never called them dumb. I actually happen to have a good relationship with them, so I take offense to what you're implying. I mearly stated that I don't like GitHub and gave some legitimate reasons. Which btw : Maybe the one who should learn humility is you.
Here is an alternative Piped link(s):
GitHub is Trash
Piped is a privacy-respecting open-source alternative frontend to YouTube.
I'm open-source; check me out at GitHub.