[llvm-dev] [cfe-dev] GitHub Migration Schedule and Plans
Mehdi AMINI via llvm-dev
llvm-dev at lists.llvm.org
Thu Oct 10 15:50:58 PDT 2019
On Thu, Oct 10, 2019 at 1:14 PM Jordan Rupprecht <rupprecht at google.com>
wrote:
>
>
> On Thu, Oct 10, 2019 at 12:29 PM Tom Stellard via llvm-dev <
> llvm-dev at lists.llvm.org> wrote:
>
>> On 10/10/2019 11:40 AM, Mehdi AMINI wrote:
>> >
>> >
>> > On Thu, Oct 10, 2019 at 10:59 AM Tom Stellard <tstellar at redhat.com
>> <mailto:tstellar at redhat.com>> wrote:
>> >
>> > On 10/09/2019 11:05 PM, Mehdi AMINI wrote:
>> > >
>> > >
>> > > On Wed, Oct 9, 2019 at 10:16 PM Tom Stellard via cfe-dev <
>> cfe-dev at lists.llvm.org <mailto:cfe-dev at lists.llvm.org> <mailto:
>> cfe-dev at lists.llvm.org <mailto:cfe-dev at lists.llvm.org>>> wrote:
>> > >
>> > > Hi,
>> > >
>> > > We're less than 2 weeks away from the developer meeting, so I
>> wanted to
>> > > give an update on the GitHub migration and what's (hopefully)
>> going to
>> > > happen during the developer meeting.
>> > >
>> > > Everyone who has added their information to the
>> github-usernames.txt
>> > > file in SVN before today should have received an invite to
>> become a collaborator
>> > > on the llvm-project repository. If you did not receive an
>> invite and think
>> > > you should have, please contact me off-list. I will continue
>> to monitor the
>> > > file for new updates and periodically send out new batches of
>> invites.
>> > >
>> > > There is still some ongoing work to get the buildbots ready
>> and the mailing lists
>> > > ready, but we are optimistic that the work will be done in
>> time.
>> > >
>> > > The team at GitHub has finished implementing the "Require
>> Linear History"
>> > > branch protection that we requested. The feature is in beta
>> and currently
>> > > enabled in the llvm-project repository. This means that we
>> will have the
>> > > option to commit directly via git, in addition to using the
>> git-llvm script.
>> > > A patch that updates git-llvm to push to git instead of svn
>> can be found here:
>> > > https://reviews.llvm.org/D67772. You should be able to test
>> it out on your
>> > > own fork of the llvm-project repository.
>> > >
>> > > The current plan is to begin the final migration steps on the
>> evening (PDT)
>> > > of October 21. Here is what will happen:
>> > >
>> > > 1. Make SVN read-only.
>> > > 2. Turn-off the SVN->git update process.
>> > > 3. Commit the new git-llvm script directly to github.
>> > > 4. Grant all contributors write access to the repository.
>> > >
>> > >
>> > > Is the repo configured to forbid contributors to create new
>> branches? I'm worried about the "jungle" it can become quickly if we leave
>> open the possibility to create branches "at will" in the repo, I rather
>> leave this to maintainers.
>> > >
>> >
>> > I haven't been able to find a way to restrict branch creation for
>> committers,
>> > I'm not sure if this is even possible.
>> >
>> >
>> > I think you can just go to the branch settings, add a new branch
>> protection rule, match on everything but master, and check "Restrict who
>> can push to matching branches".
>> >
>>
>> I tried this, and the branch protections only come into effect after a
>> branch
>> has been creating, so this doesn't prevent new branches. It's actually
>> worse
>> than doing nothing, because once the branch is created the branch
>> protection
>> prevents you from deleting it.
>>
>
Ah, interesting :)
Since for now `git-llvm` is necessary to push to the repo, I guess creating
a branch won't even really be possible? So when adding the support for
branch creation to `git-llvm` we could print a disclaimer about it or
something?
>
>> -Tom
>>
>
> FWIW, we're interested in periodically (weekly) tagging well-tested/stable
> revisions, but via a branch instead of just a tag so we can include which
> cherrypicks (e.g. reverts or fixes) are needed. We do this with the current
> svn repo so we'd just be porting existing functionality to github.
>
I would likely include this in the general category of "project maintainer"
created branch?
The main difference with SVN, is that on GitHub a fork is "cheap" and
everyone can have their own. Also compared to SVN you don't really know
ahead of time when you type `git clone` or `git pull` that you may pull a
lot of noise.
I'm not against branches for the sake of it, I just have some bad memories
from a repo where every developer was pushing their work in progress
branches all the time and they never got deleted: to the point where some
git CLI auto-completion was unusable (there were >10k branches and probably
as many tags).
>
> (Also, I'm not sure this announcement thread with all the *-dev lists is
> the best place to discuss branching policy, but I wanted to get this bit in
> since y'all brought it up :) )
>
(we discussed branches in past GitHub migration thread, we just never had a
dedicated email thread to user-branches, as it didn't seem like there was a
strong need for it)
>
>
>>
>> >
>> >
>> > We could try to enforce this rule in the git-llvm script, but this
>> would
>> > mean making use of the script mandatory, which was our original
>> plan, but
>> > that was based on the assumption that the "Require Linear History"
>> > protection would not be ready in time.
>> >
>> > Generally, would it be better if we kept use of the script
>> mandatory so that
>> > we can handle this and other potential restrictions in the future?
>> >
>> > - Tom
>> > >
>> > >
>> > > 5. Email lists announcing that the migration is complete.
>> > >
>> > > Once the migration is complete, if you run into any issues,
>> please file
>> > > a bug, and mark it as a blocker for the github metabug
>> PR39393.
>> > >
>> > > If you have any questions or think I am missing something,
>> please
>> > > let me know.
>> > >
>> > >
>> > > This is fantastic! Thank you so much for doing this work Tom :)
>> > >
>> > > --
>> > > Mehdi
>> > >
>> > >
>> >
>>
>> _______________________________________________
>> LLVM Developers mailing list
>> llvm-dev at lists.llvm.org
>> https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev
>>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20191010/0f175932/attachment.html>
More information about the llvm-dev
mailing list