Requesting New Repositories

From Qt Wiki
Revision as of 15:13, 17 August 2023 by WindJunkie (talk | contribs) (adding a reference to the subscription of the mailing list)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

This page describes the process for creating new repositories on our Gerrit server.

Please send an email to the development@qt-project.org mailing list. In this email you describe what you plan to do and why you need a new repository for that. Note, that you need to subscribe to the list before sending messages to it.

Once the discussion settles down and it is agreed that you should work in a new repository, create a task https://bugreports.qt.io/secure/CreateIssueDetails!init.jspa?pid=10600&issuetype=3&components=19470&priority=3

in the Qt Quality Assurance Infrastructure (QTQAINFRA) project with the component Gerrit.

Please include the following information:

  • Name and description of the project - A descriptive name, such as the Qt module name. The description explains in one or two sentences what the code does.
  • Responsible persons
  • Desired repository name, including namespace (please try to follow existing patterns)
    • All projects which are meant to ultimately end up in the qt distribution should start out in the qt/ namespace.
    • The playground/ namespace is for projects which don't fit any other category.
    • qt-labs/ is a semi-private namespace for employees of The Qt Company. Repositories here can be created without consulting the external community, but should be discussed on the internal development list. Using this namespace just as a shortcut to creating new Qt modules is discouraged (migration to the qt/ namespace requires community consultation anyway, and renaming repositories causes unnecessary hassle).
  • If migrating from an existing repository, the URL of it, or explicitly say that you are not importing existing history
    • If you import verbatim history, it must comply with Qt's Commit Policy to a reasonable degree. Otherwise, you need to reshape or squash the history, and preferably submit it through the usual code review process.

When a consensus about the new repo's existence and parameters emerges, an admin will proceed with the creation.

Execution Details (for Admins)

  • Mirroring to code.qt.io is automatic
  • A mirror on GitHub needs to be created manually, and Gerrit's replication configuration may need to be adjusted
  • Some TQtC sites maintain local mirrors which require manual action
  • Repos in the qt/ namespace should be added to the qt5 super repo without much delay (typically without configuring them to be part of the default checkout yet).
  • It is probably prudent to create a new product or component in JIRA