GCC Newspaper
JULY 29, 2026
gcc Proposed

GCC repo is locked?

Repository push hook issues prompt discussion on using main repo for personal branches.

A user reported being unable to push to the GCC repository due to a “Another user is currently pushing” message, indicating a lock on the repository. This has recurred, leading to a discussion about discouraging or disallowing personal branches in the main repository, with suggestions to use external hosting like Gitlab or sourceware.org instead.

In the Thread 3 participants
  1. Richard Biener <richard.guenther@gmail.com> proposer

    Suggests evaluating the efficiency of the scripts causing the push hook issues, implying they could be optimized.

    “Then just don’t run them …. There must be also inefficiencies in the scripts.”
  2. Jonathan Wakely <fmtoc@redhat.com> reviewer

    Agrees with discouraging personal branches in the main repo, pointing to Forge.sourceware.org as an alternative.

    “Yes, or forge.sourceware.org There's no good reason to use the main gcc.gnu.org repo for personal branches. And since this keeps happening maybe we should discourage or even disallow personal branches in the main repo.”
  3. Mikael Morin <morin-mikael@orange.fr> contributor

    Acknowledges causing the issue due to a misunderstanding about killing push hook processes.

    “I'm afraid I'm (again) the cause of this. I posted a message on IRC telling anyone could kill the push hook process(es). I'm not sure it reached the right people (or someone at all).”

Technical Tradeoffs

  • Centralizing personal branches in the main repository simplifies some workflows but increases the risk of such lockouts.
  • Using external hosting for personal branches reduces contention on the main repository but adds an extra step for developers.

In Details

This discussion concerns access issues to the main GCC development repository. Specifically, repeated 'push hook declined' errors are hindering developers. The core of the problem appears to be contention or issues with server-side hooks, possibly related to personal branches being pushed to the main repository.

Filed Under: gitrepositoryaccesshooks