Requesting New Repositories: Difference between revisions

From Qt Wiki
Jump to navigation Jump to search
(Created page with "This page describes the process for creating new repositories on our [https://codereview.qt-project.org/ Gerrit server]. Please send an email addressed to the development@qt-...")
 
(adding a reference to the subscription of the mailing list)
 
(8 intermediate revisions by 5 users not shown)
Line 1: Line 1:
This page describes the process for creating new repositories on our [https://codereview.qt-project.org/ Gerrit server].
[[Category:Developing Qt::Process]]
This page describes the process for creating new repositories on our [https://codereview.qt-project.org/ 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 [https://lists.qt-project.org 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 send an email addressed to the development@qt-project.org mailing list.
Please include the following information:
Please include the following information:


* Name and description of the project
* '''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
* Responsible persons
* Desired repository name (please try to follow [https://codereview.qt-project.org/#/admin/projects/ existing patterns])
* Desired '''repository name''', including namespace (please try to follow [https://codereview.qt-project.org/#/admin/projects/ existing patterns])
** All projects which are meant to ultimately end up in the qt distribution should start out in the qt/ namespace.
** 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.
** 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 using it just as a shortcut is discouraged (migration to the qt/ namespace requires community consultation).
** 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 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.
** 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.


Oswald Buddenhagen (ossi|tt) and Frederik Gladhorn (fregl) are the server admins who will ultimately execute the request, but please don't try to bypass the process.
When a consensus about the new repo's existence and parameters emerges, an admin will proceed with the creation.


=== Execution Details (for Admins) ===
=== Execution Details (for Admins) ===


* Mirroring to code.qt.io is automatic
* 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
* 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
* 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).
* 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

Latest revision as of 15:13, 17 August 2023

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