[llvm-dev] Enable Contributions Through Pull-request For LLVM

Nicholas Wilson via llvm-dev llvm-dev at lists.llvm.org
Fri Nov 8 16:27:30 PST 2019

> On 7 Nov 2019, at 6:30 pm, James Henderson via llvm-dev <llvm-dev at lists.llvm.org> wrote:
> Having been using Github internally for code reviews of private patches on LLVM, and Phabricator for upstream ones, I've found the latter to be far easier to use. Prior to working with LLVM, I had basically no experience with either, so I'd say I'm coming from a fairly neutral starting point. Here are some of my observations (I want to highlight 9 as a particular issue, due to other recent discussions I've seen on the mailing list):
> 9) On the note of branches for PRs, don't they require users to push their local branches to the remote repo to create? That means we'll end up thousands of branches in git. Not sure that this will do performance any good, and I seem to remember there was general agreement that we didn't want people to push their branches generally. Yes, in theory branches should be deleted after they're merged, but I've seen that locally not happen regularly, and that's even assuming that all PRs get merged in (they won't).

You would only ever end up with thousands of branches if everyone push to a branch on the LLVM’s “fork” of the monorepo. That still wouldn’t be a problem performance wise because branch are very cheap by design, it might clog up the branch selection UI a bit but not much more. 

But from the perspective of outside contributors, which seems to be one of the main reasons for this change, that is not generally the way things are done, even on projects where you have commit access. What usually happens is you push your local branch to your GitHub fork and issue the PR from there, in which case branches will accumulate there. (GitHub will also invisibly mirror the branch on the monorepo, but branches are cheap and it won’t show up)


More information about the llvm-dev mailing list