Skip to content

Latest Plan and Implementation Status: Repo Grouping under Organization (Subgroups) #39457

Description

@CasperHK

What problem would this solve?

📝 Context & Motivation

Many teams and enterprises adopting Gitea face a common structural bottleneck: the organization structure is completely flat. While Gitea is widely appreciated for its lightweight design and speed, the lack of hierarchical Repo Grouping / Subgroups under organizations makes it difficult to scale for large teams, microservice architectures, or multi-department setups.

This has been a long-standing request within the community (frequently discussed in older threads like Issue #1872 and related feature requests).

❓ Questions for Maintainers & Core Contributors

As the project evolves, we would love to get an update on the current stance and roadmap regarding this feature:

  1. Current Status: Is there an active RFC, design proposal, or branch working on hierarchical organization groups / subgroups?
  2. Architectural Roadmap: What are the primary technical blockers preventing this implementation? (e.g., URL routing changes, Git path storage, or permission inheritance models like Team ACLs)?
  3. Community Contribution: If this is currently unassigned or planned for a later milestone, is the core team open to community contributions or design proposals for this feature? If so, is there an existing preferred architectural direction?

Any insights, updates, or pointers to ongoing discussions would be greatly appreciated by the community!

What do you propose?

To introduce repo grouping with minimal disruption, we propose an incremental database-first approach: introducing a dedicated repo_groups table with self-referencing parent IDs to establish structural foundations. This allows for an initial phase of virtual grouping and dashboard filtering while keeping existing repository routes intact, before gradually layering on hierarchical URL routing and team permission inheritance as the feature matures.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    type/proposalThe new feature has not been accepted yet but needs to be discussed first.

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions