Tl;Dr is it a di*k move to ignore or reject pull requests that use non-English languages in commit msgs even though the project is all documented in English and is not a local project?<p>I just noticed a pull request with 5 commits on one of my repos with Chinese commit msgs. Even though the author has added a commit msg in English, explaining what he has done, it still pisses me off that I can't navigate the pull requests in a sane way because I can't tell what they contain until I open them one by one.<p>What do you think, and what is the professional approach to sth like this?
I would try to drop the “d*ck move” narrative from my thinking if I was you.<p>There’s a clear precedent, and a clear reason, to request the rewrite.<p>This has nothing to do with personalities and everything to do with the quality and navigability of the code - just make sure to communicate the whys with your request and word it politely.
I think you're overthinking this. "Thanks for the PR. Could you update the commits to English, please?" Is all that's needed.<p>If the situation is pissing you off, that's a separate thing. Maybe you should slow down and consider why. Someone just gave you some of their free time, just not in a perfect way you expected.
>What do you think, and what is the professional approach to sth like this?<p>I'd say this would be a perfect time to introduce or update your project's contribution guide.<p>You can develop your own rules or use some existing spec to standardize commit messages such as Conventional Commits: <a href="https://www.conventionalcommits.org/en/v1.0.0/" rel="nofollow">https://www.conventionalcommits.org/en/v1.0.0/</a>
Let's flip it around. Personally, I wouldn't submit changes with a bunch of English in it to a project that was primarily Chinese. I would feel like a jerk doing that. Instead I would make a best effort to translate everything into the project's language.<p>Maybe I would forget to translate some things, in which case a friendly request to fix the oversight would be appreciated.
Read the code:<p>- If you can understand it and it makes sense, feel free to rewrite the git history and accept the patch.<p>- If you cannot understand it, ask questions based on your understanding. Feel free to refuse the PR if it does not end up making sense for you.<p>The fact that the commit messages are not English don't matter at all IMHO: you are entitled to refuse a PR even if the commit messages are in English. What matters is whether or not you want to maintain the offered changes. And in order to do that, you need to understand the code.
The professional approach is to add the English requirement to the style sheet and ask them to resubmit it accordingly to the submission guidelines.<p>To be more polite, run it through Google Translate yourself and propose text that isn't broken English. Sometimes they're just terrible at English and are reluctant to translate it.<p>I wouldn't be surprised if the commits are just "aaaaaaaaaaaaa" or swearing in another language.
Rule of thumb in Germany is that everything code related must be in English for the simple reason that should you hire people that are not speaking German, they will have a much harder type getting into the codebase.<p>And that's for projects started in German companies for German users written by German.<p>The idea of contributing to an open source project that hasn't a single German sentence anywhere to be found and then adding German commit messages seems insane to me. I'd never even thought about this.<p>So yeah. Just tell him / her to rewrite the commit messages in English.
Distilled completely, they end up processed one by one, right? Triage is always a slog.<p>Putting up contributor guidelines would help <i>[assuming they're missing]</i>. Otherwise, I'd just get to sorting out the code/branches when <i>'most convenient'</i> and carry on.<p>Most of my stuff gets zero attention. I can't be so picky
I can understand why someone who speaks little English would be tempted to try to avoid translating the commit messages in case you didn't care. Maybe they were just busy.<p>But it also does seem reasonable to be annoyed and want it changed. Also reasonable to be less than 100% sure about making them do that if you want to encourage contributors. But you should ask them to fix things you don't like.<p>I think the nice thing to do would be to just use "please" when requesting to translate the messages. And if they won't bother for some reason then of course you don't need to accept it.
> Tl;Dr is it a di*k move to ignore or reject pull requests that use non-English languages in commit msgs even though the project is all documented in English and is not a local project?<p>No.<p>> What do you think, and what is the professional approach to sth like this?<p>1. Be thankful to the person that made these commmits<p>2. Explain that comments in a language other than english are difficult for you to understand and will be difficult for other people to understand as well, in the future<p>3. Ask the person to re-submit the pull request with commit messages in english, warning that you'll have to reject the pull-request otherwise
Everyone should use English. All technology should be in English, as it was in the beginning. Locales were a mistake and are a headache. Internationalization is a misguided boondoggle that enables a quagmire of fractured communication.
You could reject it with a nicely worded rejection message, thanking them for their work and explaining why it causes difficulty and how they can resubmit it with a fix and how the fix would make future contributors lives much easier.
Personally I think we should have already live in an age of no barrier of communication. Machine translation is working well. I often click on "translate" button on Facebook, TikTok for comments in languages I don't understand. I think it is a problem for GitHub to solve, not you. So I would say, you can reject based on the fact that as a maintainer you don't understand the commit message, it is fair.
I think, if you have this problem, your tooling is bad. There are broadly two approaches to git commit history: (a) it should reflect the historical development process; and (b) it should be cleaned up and pretty.<p>If you're taking approach (b), then the maintainer is responsible for rewriting commits (e.g. squash merge). If using GitHub, only the commit description given in the PR is used, and the "true" history is discarded, so it doesn't matter.<p>I prefer approach (a), but even something as primitive as gitk (from Git GUI) would let me browse the history you describe without issues. Provided that the merge commit is a summary in the project language, intermediate "true-history"-style commits are most useful as a mnemonic aid to the original developer, and secondarily as evidence for a retrospective investigation (for which you want as much primary-source data as possible: even if the author's fluently bilingual, translating risks losing valuable information).<p>The best approach, imo, is to be fine with this, and take measures to ensure that it does not impede your workflow. An acceptable, professional approach would be to add a contributor's guide, requiring that all commit messages have their first line in English.<p>If you're getting angry, that suggests you're doing something silly like relying on GitHub's useless web view.