On Tue, Sep 29, 2020 at 10:01:23AM -0700, Joel Brobecker wrote: > > > That's correct. The commit-extra-checker is called using the same list > > > of "added commits" as the other checks implemented in the hooks, and > > > that list excludes all commits accessible from existing references > > > in the repository. > > > > Since 03e87724864a17e22c9b692cc0caa014e9dba6b1 has been in the repository > > (on master) since before GCC 10 branched, something must be going wrong > > for a push to be rejected based on a check of that commit. > > OK. Can you create a tarball of the GCC's bare repository as it is now, > and give me access to both this tarball and the branch that the user > was trying to update, I can try to spend a bit of time this weekend > trying to reproduce and then investigating it. And just for the avoidance > of doubt, if I could get the git command that was used to attempt > the push, this would avoid wasting time investigating the wrong thing.
Good news; If I read the code correctly, I think I found the source of your issue, and the fix should be relatively simple. The data above would be useful to confirm we're looking at the same issue, though. > In the meantime, perhaps you can add a workaround in your script > that calls git to check whether the commit already exists in one > of the references, and if it does, just bail? -- Joel