CINXE.COM
GitLab/Hosting a project on GitLab - MediaWiki
<!DOCTYPE html> <html class="client-nojs vector-feature-language-in-header-disabled vector-feature-language-in-main-page-header-disabled vector-feature-page-tools-pinned-disabled vector-feature-toc-pinned-clientpref-1 vector-feature-main-menu-pinned-disabled vector-feature-limited-width-clientpref-1 vector-feature-limited-width-content-enabled vector-feature-custom-font-size-clientpref-1 vector-feature-appearance-pinned-clientpref-1 vector-feature-night-mode-disabled skin-theme-clientpref-day vector-sticky-header-enabled vector-toc-available" lang="en" dir="ltr"> <head> <meta charset="UTF-8"> <title>GitLab/Hosting a project on GitLab - MediaWiki</title> <script>(function(){var className="client-js vector-feature-language-in-header-disabled vector-feature-language-in-main-page-header-disabled vector-feature-page-tools-pinned-disabled vector-feature-toc-pinned-clientpref-1 vector-feature-main-menu-pinned-disabled vector-feature-limited-width-clientpref-1 vector-feature-limited-width-content-enabled vector-feature-custom-font-size-clientpref-1 vector-feature-appearance-pinned-clientpref-1 vector-feature-night-mode-disabled skin-theme-clientpref-day vector-sticky-header-enabled vector-toc-available";var cookie=document.cookie.match(/(?:^|; )mediawikiwikimwclientpreferences=([^;]+)/);if(cookie){cookie[1].split('%2C').forEach(function(pref){className=className.replace(new RegExp('(^| )'+pref.replace(/-clientpref-\w+$|[^\w-]+/g,'')+'-clientpref-\\w+( |$)'),'$1'+pref+'$2');});}document.documentElement.className=className;}());RLCONF={"wgBreakFrames":false,"wgSeparatorTransformTable":["",""],"wgDigitTransformTable":["",""],"wgDefaultDateFormat":"dmy","wgMonthNames":["","January","February","March","April","May","June","July","August","September","October","November","December"],"wgRequestId":"9990e0bb-8fc7-4145-9e22-d6a49f2f1117","wgCanonicalNamespace":"","wgCanonicalSpecialPageName":false,"wgNamespaceNumber":0,"wgPageName":"GitLab/Hosting_a_project_on_GitLab","wgTitle":"GitLab/Hosting a project on GitLab","wgCurRevisionId":6428619,"wgRevisionId":6428619,"wgArticleId":1455050,"wgIsArticle":true,"wgIsRedirect":false,"wgAction":"view","wgUserName":null,"wgUserGroups":["*"],"wgCategories":["GitLab technical documentation"],"wgPageViewLanguage":"en","wgPageContentLanguage":"en","wgPageContentModel":"wikitext","wgRelevantPageName":"GitLab/Hosting_a_project_on_GitLab","wgRelevantArticleId":1455050,"wgIsProbablyEditable":false,"wgRelevantPageIsProbablyEditable":false,"wgRestrictionEdit":["autoconfirmed"],"wgRestrictionMove":["autoconfirmed"],"wgNoticeProject":"mediawiki","wgCiteReferencePreviewsActive":true,"wgMediaViewerOnClick":true,"wgMediaViewerEnabledByDefault":true,"wgVisualEditor":{"pageLanguageCode":"en","pageLanguageDir":"ltr","pageVariantFallbacks":"en"},"wgMFDisplayWikibaseDescriptions":{"search":true,"watchlist":true,"tagline":false,"nearby":true},"wgWMESchemaEditAttemptStepOversample":false,"wgWMEPageLength":10000,"wgEditSubmitButtonLabelPublish":true,"wgDiscussionToolsFeaturesEnabled":{"replytool":true,"newtopictool":true,"sourcemodetoolbar":true,"topicsubscription":false,"autotopicsub":false,"visualenhancements":false,"visualenhancements_reply":false,"visualenhancements_pageframe":false},"wgDiscussionToolsFallbackEditMode":"visual","wgULSPosition":"personal","wgULSisCompactLinksEnabled":true,"wgVector2022LanguageInHeader":false,"wgULSisLanguageSelectorEmpty":false,"wgCheckUserClientHintsHeadersJsApi":["brands","architecture","bitness","fullVersionList","mobile","model","platform","platformVersion"],"wgSiteNoticeId":"2.8"}; RLSTATE={"ext.globalCssJs.user.styles":"ready","site.styles":"ready","user.styles":"ready","ext.globalCssJs.user":"ready","user":"ready","user.options":"loading","ext.pygments":"ready","ext.discussionTools.init.styles":"ready","oojs-ui-core.styles":"ready","oojs-ui.styles.indicators":"ready","mediawiki.widgets.styles":"ready","oojs-ui-core.icons":"ready","skins.vector.search.codex.styles":"ready","skins.vector.styles":"ready","skins.vector.icons":"ready","ext.wikimediamessages.styles":"ready","ext.visualEditor.desktopArticleTarget.noscript":"ready","ext.uls.pt":"ready","wikibase.client.init":"ready","ext.dismissableSiteNotice.styles":"ready"};RLPAGEMODULES=["ext.pygments.view","site","mediawiki.page.ready","mediawiki.toc","skins.vector.js","ext.centralNotice.geoIP","ext.centralNotice.startUp","ext.urlShortener.toolbar","ext.centralauth.centralautologin","mmv.bootstrap","ext.visualEditor.desktopArticleTarget.init","ext.visualEditor.targetLoader","ext.echo.centralauth","ext.discussionTools.init","ext.eventLogging","ext.wikimediaEvents","ext.navigationTiming","ext.uls.compactlinks","ext.uls.interface","ext.checkUser.clientHints","ext.dismissableSiteNotice"];</script> <script>(RLQ=window.RLQ||[]).push(function(){mw.loader.impl(function(){return["user.options@12s5i",function($,jQuery,require,module){mw.user.tokens.set({"patrolToken":"+\\","watchToken":"+\\","csrfToken":"+\\"}); }];});});</script> <link rel="stylesheet" href="/w/load.php?lang=en&modules=ext.discussionTools.init.styles%7Cext.dismissableSiteNotice.styles%7Cext.pygments%7Cext.uls.pt%7Cext.visualEditor.desktopArticleTarget.noscript%7Cext.wikimediamessages.styles%7Cmediawiki.widgets.styles%7Coojs-ui-core.icons%2Cstyles%7Coojs-ui.styles.indicators%7Cskins.vector.icons%2Cstyles%7Cskins.vector.search.codex.styles%7Cwikibase.client.init&only=styles&skin=vector-2022"> <script async="" src="/w/load.php?lang=en&modules=startup&only=scripts&raw=1&skin=vector-2022"></script> <meta name="ResourceLoaderDynamicStyles" content=""> <link rel="stylesheet" href="/w/load.php?lang=en&modules=site.styles&only=styles&skin=vector-2022"> <meta name="generator" content="MediaWiki 1.44.0-wmf.22"> <meta name="referrer" content="origin"> <meta name="referrer" content="origin-when-cross-origin"> <meta name="robots" content="max-image-preview:standard"> <meta name="format-detection" content="telephone=no"> <meta name="viewport" content="width=1120"> <meta property="og:site_name" content="MediaWiki"> <meta property="og:title" content="GitLab/Hosting a project on GitLab - MediaWiki"> <meta property="og:type" content="website"> <link rel="preconnect" href="//upload.wikimedia.org"> <link rel="alternate" media="only screen and (max-width: 640px)" href="//m.mediawiki.org/wiki/GitLab/Hosting_a_project_on_GitLab"> <link rel="apple-touch-icon" href="/static/apple-touch/mediawiki.png"> <link rel="icon" href="/static/favicon/mediawiki.ico"> <link rel="search" type="application/opensearchdescription+xml" href="/w/rest.php/v1/search" title="MediaWiki (en)"> <link rel="EditURI" type="application/rsd+xml" href="//www.mediawiki.org/w/api.php?action=rsd"> <link rel="canonical" href="https://www.mediawiki.org/wiki/GitLab/Hosting_a_project_on_GitLab"> <link rel="license" href="https://creativecommons.org/licenses/by-sa/4.0/"> <link rel="alternate" type="application/atom+xml" title="MediaWiki Atom feed" href="/w/index.php?title=Special:RecentChanges&feed=atom"> <link rel="dns-prefetch" href="//meta.wikimedia.org" /> <link rel="dns-prefetch" href="auth.wikimedia.org"> </head> <body class="ext-discussiontools-replytool-enabled ext-discussiontools-newtopictool-enabled ext-discussiontools-sourcemodetoolbar-enabled skin--responsive skin-vector skin-vector-search-vue mediawiki ltr sitedir-ltr mw-hide-empty-elt ns-0 ns-subject page-GitLab_Hosting_a_project_on_GitLab rootpage-GitLab skin-vector-2022 action-view"><a class="mw-jump-link" href="#bodyContent">Jump to content</a> <div class="vector-header-container"> <header class="vector-header mw-header"> <div class="vector-header-start"> <nav class="vector-main-menu-landmark" aria-label="Site"> <div id="vector-main-menu-dropdown" class="vector-dropdown vector-main-menu-dropdown vector-button-flush-left vector-button-flush-right" title="Main menu" > <input type="checkbox" id="vector-main-menu-dropdown-checkbox" role="button" aria-haspopup="true" data-event-name="ui.dropdown-vector-main-menu-dropdown" class="vector-dropdown-checkbox " aria-label="Main menu" > <label id="vector-main-menu-dropdown-label" for="vector-main-menu-dropdown-checkbox" class="vector-dropdown-label cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet cdx-button--icon-only " aria-hidden="true" ><span class="vector-icon mw-ui-icon-menu mw-ui-icon-wikimedia-menu"></span> <span class="vector-dropdown-label-text">Main menu</span> </label> <div class="vector-dropdown-content"> <div id="vector-main-menu-unpinned-container" class="vector-unpinned-container"> <div id="vector-main-menu" class="vector-main-menu vector-pinnable-element"> <div class="vector-pinnable-header vector-main-menu-pinnable-header vector-pinnable-header-unpinned" data-feature-name="main-menu-pinned" data-pinnable-element-id="vector-main-menu" data-pinned-container-id="vector-main-menu-pinned-container" data-unpinned-container-id="vector-main-menu-unpinned-container" > <div class="vector-pinnable-header-label">Main menu</div> <button class="vector-pinnable-header-toggle-button vector-pinnable-header-pin-button" data-event-name="pinnable-header.vector-main-menu.pin">move to sidebar</button> <button class="vector-pinnable-header-toggle-button vector-pinnable-header-unpin-button" data-event-name="pinnable-header.vector-main-menu.unpin">hide</button> </div> <div id="p-navigation" class="vector-menu mw-portlet mw-portlet-navigation" > <div class="vector-menu-heading"> Navigation </div> <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="n-mainpage-description" class="mw-list-item"><a href="/wiki/MediaWiki" title="Visit the main page [z]" accesskey="z"><span>Main page</span></a></li><li id="n-mw-download" class="mw-list-item"><a href="/wiki/Download"><span>Get MediaWiki</span></a></li><li id="n-mw-extensions" class="mw-list-item"><a href="/wiki/Special:MyLanguage/Category:Extensions"><span>Get extensions</span></a></li><li id="n-blog-text" class="mw-list-item"><a href="https://techblog.wikimedia.org/"><span>Tech blog</span></a></li><li id="n-mw-contribute" class="mw-list-item"><a href="/wiki/Special:MyLanguage/How_to_contribute"><span>Contribute</span></a></li> </ul> </div> </div> <div id="p-support" class="vector-menu mw-portlet mw-portlet-support" > <div class="vector-menu-heading"> Support </div> <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="n-help" class="mw-list-item"><a href="/wiki/Special:MyLanguage/Help:Contents" title="The place to find out"><span>User help</span></a></li><li id="n-mw-faq" class="mw-list-item"><a href="/wiki/Special:MyLanguage/Manual:FAQ"><span>FAQ</span></a></li><li id="n-mw-manual" class="mw-list-item"><a href="/wiki/Special:MyLanguage/Manual:Contents"><span>Technical manual</span></a></li><li id="n-mw-supportdesk" class="mw-list-item"><a href="/wiki/Project:Support_desk"><span>Support desk</span></a></li><li id="n-mw-communication" class="mw-list-item"><a href="/wiki/Special:MyLanguage/Communication"><span>Communication</span></a></li> </ul> </div> </div> <div id="p-development" class="vector-menu mw-portlet mw-portlet-development" > <div class="vector-menu-heading"> Development </div> <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="n-mw-developerportal" class="mw-list-item"><a href="https://developer.wikimedia.org/"><span>Developer portal</span></a></li><li id="n-svn_statistics" class="mw-list-item"><a href="/wiki/Development_statistics"><span>Code statistics</span></a></li> </ul> </div> </div> <div id="p-mediawiki.org" class="vector-menu mw-portlet mw-portlet-mediawiki_org" > <div class="vector-menu-heading"> mediawiki.org </div> <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="n-portal" class="mw-list-item"><a href="/wiki/Project:Help" title="About the project, what you can do, where to find things"><span>Community portal</span></a></li><li id="n-recentchanges" class="mw-list-item"><a href="/wiki/Special:RecentChanges" title="A list of recent changes in the wiki [r]" accesskey="r"><span>Recent changes</span></a></li><li id="n-mw-translate" class="mw-list-item"><a href="/wiki/Special:LanguageStats"><span>Translate content</span></a></li><li id="n-specialpages" class="mw-list-item"><a href="/wiki/Special:SpecialPages"><span>Special pages</span></a></li><li id="n-randompage" class="mw-list-item"><a href="/wiki/Special:Random" title="Load a random page [x]" accesskey="x"><span>Random page</span></a></li><li id="n-mw-discussion" class="mw-list-item"><a href="/wiki/Project:Village_Pump"><span>Village pump</span></a></li><li id="n-sandboxlink-portlet-label" class="mw-list-item"><a href="/wiki/Project:Sandbox"><span>Sandbox</span></a></li> </ul> </div> </div> <div id="p-lang" class="vector-menu mw-portlet mw-portlet-lang" > <div class="vector-menu-heading"> In other languages </div> <div class="vector-menu-content"> <ul class="vector-menu-content-list"> </ul> <div class="after-portlet after-portlet-lang"><span class="wb-langlinks-add wb-langlinks-link"><a href="https://www.wikidata.org/wiki/Special:NewItem?site=mediawikiwiki&page=GitLab%2FHosting+a+project+on+GitLab" title="Add interlanguage links" class="wbc-editpage">Add links</a></span></div> </div> </div> </div> </div> </div> </div> </nav> <a href="/wiki/MediaWiki" class="mw-logo"> <img class="mw-logo-icon" src="/static/images/icons/mediawikiwiki.svg" alt="" aria-hidden="true" height="50" width="50"> <span class="mw-logo-container skin-invert"> <img class="mw-logo-wordmark" alt="MediaWiki" src="/static/images/mobile/copyright/mediawikiwiki-wordmark.svg" style="width: 7.5em; height: 1.125em;"> </span> </a> </div> <div class="vector-header-end"> <div id="p-search" role="search" class="vector-search-box-vue vector-search-box-collapses vector-search-box-show-thumbnail vector-search-box-auto-expand-width vector-search-box"> <a href="/wiki/Special:Search" class="cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet cdx-button--icon-only search-toggle" title="Search MediaWiki [f]" accesskey="f"><span class="vector-icon mw-ui-icon-search mw-ui-icon-wikimedia-search"></span> <span>Search</span> </a> <div class="vector-typeahead-search-container"> <div class="cdx-typeahead-search cdx-typeahead-search--show-thumbnail cdx-typeahead-search--auto-expand-width"> <form action="/w/index.php" id="searchform" class="cdx-search-input cdx-search-input--has-end-button"> <div id="simpleSearch" class="cdx-search-input__input-wrapper" data-search-loc="header-moved"> <div class="cdx-text-input cdx-text-input--has-start-icon"> <input class="cdx-text-input__input" type="search" name="search" placeholder="Search mediawiki.org" aria-label="Search mediawiki.org" autocapitalize="sentences" title="Search MediaWiki [f]" accesskey="f" id="searchInput" > <span class="cdx-text-input__icon cdx-text-input__start-icon"></span> </div> <input type="hidden" name="title" value="Special:Search"> </div> <button class="cdx-button cdx-search-input__end-button">Search</button> </form> </div> </div> </div> <nav class="vector-user-links vector-user-links-wide" aria-label="Personal tools"> <div class="vector-user-links-main"> <div id="p-vector-user-menu-preferences" class="vector-menu mw-portlet" > <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="ca-uls" class="mw-list-item active user-links-collapsible-item"><a data-mw="interface" href="#" class="uls-trigger cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet"><span class="vector-icon mw-ui-icon-wikimedia-language mw-ui-icon-wikimedia-wikimedia-language"></span> <span>English</span></a> </li> </ul> </div> </div> <div id="p-vector-user-menu-userpage" class="vector-menu mw-portlet emptyPortlet" > <div class="vector-menu-content"> <ul class="vector-menu-content-list"> </ul> </div> </div> <nav class="vector-appearance-landmark" aria-label="Appearance"> <div id="vector-appearance-dropdown" class="vector-dropdown " title="Change the appearance of the page's font size, width, and color" > <input type="checkbox" id="vector-appearance-dropdown-checkbox" role="button" aria-haspopup="true" data-event-name="ui.dropdown-vector-appearance-dropdown" class="vector-dropdown-checkbox " aria-label="Appearance" > <label id="vector-appearance-dropdown-label" for="vector-appearance-dropdown-checkbox" class="vector-dropdown-label cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet cdx-button--icon-only " aria-hidden="true" ><span class="vector-icon mw-ui-icon-appearance mw-ui-icon-wikimedia-appearance"></span> <span class="vector-dropdown-label-text">Appearance</span> </label> <div class="vector-dropdown-content"> <div id="vector-appearance-unpinned-container" class="vector-unpinned-container"> </div> </div> </div> </nav> <div id="p-vector-user-menu-notifications" class="vector-menu mw-portlet emptyPortlet" > <div class="vector-menu-content"> <ul class="vector-menu-content-list"> </ul> </div> </div> <div id="p-vector-user-menu-overflow" class="vector-menu mw-portlet" > <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="pt-sitesupport-2" class="user-links-collapsible-item mw-list-item user-links-collapsible-item"><a data-mw="interface" href="https://donate.wikimedia.org/?wmf_source=donate&wmf_medium=sidebar&wmf_campaign=www.mediawiki.org&uselang=en" class=""><span>Donate</span></a> </li> <li id="pt-createaccount-2" class="user-links-collapsible-item mw-list-item user-links-collapsible-item"><a data-mw="interface" href="/w/index.php?title=Special:CreateAccount&returnto=GitLab%2FHosting+a+project+on+GitLab" title="You are encouraged to create an account and log in; however, it is not mandatory" class=""><span>Create account</span></a> </li> <li id="pt-login-2" class="user-links-collapsible-item mw-list-item user-links-collapsible-item"><a data-mw="interface" href="/w/index.php?title=Special:UserLogin&returnto=GitLab%2FHosting+a+project+on+GitLab" title="You are encouraged to log in; however, it is not mandatory [o]" accesskey="o" class=""><span>Log in</span></a> </li> </ul> </div> </div> </div> <div id="vector-user-links-dropdown" class="vector-dropdown vector-user-menu vector-button-flush-right vector-user-menu-logged-out" title="More options" > <input type="checkbox" id="vector-user-links-dropdown-checkbox" role="button" aria-haspopup="true" data-event-name="ui.dropdown-vector-user-links-dropdown" class="vector-dropdown-checkbox " aria-label="Personal tools" > <label id="vector-user-links-dropdown-label" for="vector-user-links-dropdown-checkbox" class="vector-dropdown-label cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet cdx-button--icon-only " aria-hidden="true" ><span class="vector-icon mw-ui-icon-ellipsis mw-ui-icon-wikimedia-ellipsis"></span> <span class="vector-dropdown-label-text">Personal tools</span> </label> <div class="vector-dropdown-content"> <div id="p-personal" class="vector-menu mw-portlet mw-portlet-personal user-links-collapsible-item" title="User menu" > <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="pt-sitesupport" class="user-links-collapsible-item mw-list-item"><a href="https://donate.wikimedia.org/?wmf_source=donate&wmf_medium=sidebar&wmf_campaign=www.mediawiki.org&uselang=en"><span>Donate</span></a></li><li id="pt-createaccount" class="user-links-collapsible-item mw-list-item"><a href="/w/index.php?title=Special:CreateAccount&returnto=GitLab%2FHosting+a+project+on+GitLab" title="You are encouraged to create an account and log in; however, it is not mandatory"><span class="vector-icon mw-ui-icon-userAdd mw-ui-icon-wikimedia-userAdd"></span> <span>Create account</span></a></li><li id="pt-login" class="user-links-collapsible-item mw-list-item"><a href="/w/index.php?title=Special:UserLogin&returnto=GitLab%2FHosting+a+project+on+GitLab" title="You are encouraged to log in; however, it is not mandatory [o]" accesskey="o"><span class="vector-icon mw-ui-icon-logIn mw-ui-icon-wikimedia-logIn"></span> <span>Log in</span></a></li> </ul> </div> </div> <div id="p-user-menu-anon-editor" class="vector-menu mw-portlet mw-portlet-user-menu-anon-editor" > <div class="vector-menu-heading"> Pages for logged out editors <a href="/wiki/Help:Contents" aria-label="Learn more about editing"><span>learn more</span></a> </div> <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="pt-anoncontribs" class="mw-list-item"><a href="/wiki/Special:MyContributions" title="A list of edits made from this IP address [y]" accesskey="y"><span>Contributions</span></a></li><li id="pt-anontalk" class="mw-list-item"><a href="/wiki/Special:MyTalk" title="Discussion about edits from this IP address [n]" accesskey="n"><span>Talk</span></a></li> </ul> </div> </div> </div> </div> </nav> </div> </header> </div> <div class="mw-page-container"> <div class="mw-page-container-inner"> <div class="vector-sitenotice-container"> <div id="siteNotice"><div id="mw-dismissablenotice-anonplace"></div><script>(function(){var node=document.getElementById("mw-dismissablenotice-anonplace");if(node){node.outerHTML="\u003Cdiv class=\"mw-dismissable-notice\"\u003E\u003Cdiv class=\"mw-dismissable-notice-close\"\u003E[\u003Ca tabindex=\"0\" role=\"button\"\u003Edismiss\u003C/a\u003E]\u003C/div\u003E\u003Cdiv class=\"mw-dismissable-notice-body\"\u003E\u003C!-- CentralNotice --\u003E\u003Cdiv id=\"localNotice\" data-nosnippet=\"\"\u003E\u003Cdiv class=\"sitenotice\" lang=\"en\" dir=\"ltr\"\u003E\u003Ccenter\u003E\n\u003Cdiv style=\"width:100%; padding:15px; border-style:solid; border-width:2px; border-color:var(--color-placeholder, black); font-size:14px; text-align:center;\" class=\"plainlinks\"\u003E\u003Cdiv style=\"vertical-align:middle;margin-top:0.5em\"\u003E\u003Cfigure class=\"mw-halign-left skin-invert\" typeof=\"mw:File\"\u003E\u003Ca href=\"/wiki/MediaWiki_Users_and_Developers_Conference\" title=\"MediaWiki Users and Developers Conference\"\u003E\u003Cimg src=\"//upload.wikimedia.org/wikipedia/commons/thumb/7/71/MediaWikiUsersDevelopersConferenceWordmark.png/120px-MediaWikiUsersDevelopersConferenceWordmark.png\" decoding=\"async\" width=\"100\" height=\"44\" class=\"mw-file-element\" srcset=\"//upload.wikimedia.org/wikipedia/commons/thumb/7/71/MediaWikiUsersDevelopersConferenceWordmark.png/250px-MediaWikiUsersDevelopersConferenceWordmark.png 1.5x\" data-file-width=\"1080\" data-file-height=\"480\" /\u003E\u003C/a\u003E\u003Cfigcaption\u003E\u003C/figcaption\u003E\u003C/figure\u003E\u003C/div\u003E\n\u003Cp\u003EEarly bird tickets for the \u003Ca href=\"/wiki/MediaWiki_Users_and_Developers_Workshop_Spring_2025\" title=\"MediaWiki Users and Developers Workshop Spring 2025\"\u003EMediaWiki Users and Developers Workshop Spring 2025\u003C/a\u003E in \u003Ca href=\"https://en.wikipedia.org/wiki/Sandusky,_Ohio\" class=\"extiw\" title=\"w:Sandusky, Ohio\"\u003ESandusky\u003C/a\u003E, Ohio, USA are now \u003Ca rel=\"nofollow\" class=\"external text\" href=\"https://www.eventbrite.com/e/mediawiki-users-and-developers-conference-spring-2025-tickets-1254864847539\"\u003E\u003Cb\u003Eon sale on Eventbrite\u003C/b\u003E\u003C/a\u003E until April 13! In addition, the \u003Ca href=\"/wiki/MediaWiki_Users_and_Developers_Conference/Scholarships\" title=\"MediaWiki Users and Developers Conference/Scholarships\"\u003Escholarship application\u003C/a\u003E is open now until April 15.\n\u003C/p\u003E\n\u003C/div\u003E\n\u003C/center\u003E\u003C/div\u003E\u003C/div\u003E\u003C/div\u003E\u003C/div\u003E";}}());</script></div> </div> <div class="vector-column-start"> <div class="vector-main-menu-container"> <div id="mw-navigation"> <nav id="mw-panel" class="vector-main-menu-landmark" aria-label="Site"> <div id="vector-main-menu-pinned-container" class="vector-pinned-container"> </div> </nav> </div> </div> <div class="vector-sticky-pinned-container"> <nav id="mw-panel-toc" aria-label="Contents" data-event-name="ui.sidebar-toc" class="mw-table-of-contents-container vector-toc-landmark"> <div id="vector-toc-pinned-container" class="vector-pinned-container"> <div id="vector-toc" class="vector-toc vector-pinnable-element"> <div class="vector-pinnable-header vector-toc-pinnable-header vector-pinnable-header-pinned" data-feature-name="toc-pinned" data-pinnable-element-id="vector-toc" > <h2 class="vector-pinnable-header-label">Contents</h2> <button class="vector-pinnable-header-toggle-button vector-pinnable-header-pin-button" data-event-name="pinnable-header.vector-toc.pin">move to sidebar</button> <button class="vector-pinnable-header-toggle-button vector-pinnable-header-unpin-button" data-event-name="pinnable-header.vector-toc.unpin">hide</button> </div> <ul class="vector-toc-contents" id="mw-panel-toc-list"> <li id="toc-mw-content-text" class="vector-toc-list-item vector-toc-level-1"> <a href="#" class="vector-toc-link"> <div class="vector-toc-text">Beginning</div> </a> </li> <li id="toc-Accessing_GitLab" class="vector-toc-list-item vector-toc-level-1 vector-toc-list-item-expanded"> <a class="vector-toc-link" href="#Accessing_GitLab"> <div class="vector-toc-text"> <span class="vector-toc-numb">1</span> <span>Accessing GitLab</span> </div> </a> <ul id="toc-Accessing_GitLab-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Where_should_your_project_live?" class="vector-toc-list-item vector-toc-level-1 vector-toc-list-item-expanded"> <a class="vector-toc-link" href="#Where_should_your_project_live?"> <div class="vector-toc-text"> <span class="vector-toc-numb">2</span> <span>Where should your project live?</span> </div> </a> <button aria-controls="toc-Where_should_your_project_live?-sublist" class="cdx-button cdx-button--weight-quiet cdx-button--icon-only vector-toc-toggle"> <span class="vector-icon mw-ui-icon-wikimedia-expand"></span> <span>Toggle Where should your project live? subsection</span> </button> <ul id="toc-Where_should_your_project_live?-sublist" class="vector-toc-list"> <li id="toc-Locating_a_group" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#Locating_a_group"> <div class="vector-toc-text"> <span class="vector-toc-numb">2.1</span> <span>Locating a group</span> </div> </a> <ul id="toc-Locating_a_group-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Creating_a_new_group" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#Creating_a_new_group"> <div class="vector-toc-text"> <span class="vector-toc-numb">2.2</span> <span>Creating a new group</span> </div> </a> <ul id="toc-Creating_a_new_group-sublist" class="vector-toc-list"> </ul> </li> </ul> </li> <li id="toc-Creating_a_new_project" class="vector-toc-list-item vector-toc-level-1 vector-toc-list-item-expanded"> <a class="vector-toc-link" href="#Creating_a_new_project"> <div class="vector-toc-text"> <span class="vector-toc-numb">3</span> <span>Creating a new project</span> </div> </a> <ul id="toc-Creating_a_new_project-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-GitLab_private_(restricted)_repos" class="vector-toc-list-item vector-toc-level-1 vector-toc-list-item-expanded"> <a class="vector-toc-link" href="#GitLab_private_(restricted)_repos"> <div class="vector-toc-text"> <span class="vector-toc-numb">4</span> <span>GitLab private (restricted) repos</span> </div> </a> <button aria-controls="toc-GitLab_private_(restricted)_repos-sublist" class="cdx-button cdx-button--weight-quiet cdx-button--icon-only vector-toc-toggle"> <span class="vector-icon mw-ui-icon-wikimedia-expand"></span> <span>Toggle GitLab private (restricted) repos subsection</span> </button> <ul id="toc-GitLab_private_(restricted)_repos-sublist" class="vector-toc-list"> <li id="toc-GitLab_private_repos_are_for_restricted_information" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#GitLab_private_repos_are_for_restricted_information"> <div class="vector-toc-text"> <span class="vector-toc-numb">4.1</span> <span>GitLab private repos are for restricted information</span> </div> </a> <ul id="toc-GitLab_private_repos_are_for_restricted_information-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-GitLab_private_repos_are_NOT_for_confidential_information" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#GitLab_private_repos_are_NOT_for_confidential_information"> <div class="vector-toc-text"> <span class="vector-toc-numb">4.2</span> <span>GitLab private repos are NOT for confidential information</span> </div> </a> <ul id="toc-GitLab_private_repos_are_NOT_for_confidential_information-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Requesting_a_private_(restricted)_repo" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#Requesting_a_private_(restricted)_repo"> <div class="vector-toc-text"> <span class="vector-toc-numb">4.3</span> <span>Requesting a private (restricted) repo</span> </div> </a> <ul id="toc-Requesting_a_private_(restricted)_repo-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-GitLab_private_repo_requirements" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#GitLab_private_repo_requirements"> <div class="vector-toc-text"> <span class="vector-toc-numb">4.4</span> <span>GitLab private repo requirements</span> </div> </a> <ul id="toc-GitLab_private_repo_requirements-sublist" class="vector-toc-list"> </ul> </li> </ul> </li> <li id="toc-Migrating_a_project" class="vector-toc-list-item vector-toc-level-1 vector-toc-list-item-expanded"> <a class="vector-toc-link" href="#Migrating_a_project"> <div class="vector-toc-text"> <span class="vector-toc-numb">5</span> <span>Migrating a project</span> </div> </a> <button aria-controls="toc-Migrating_a_project-sublist" class="cdx-button cdx-button--weight-quiet cdx-button--icon-only vector-toc-toggle"> <span class="vector-icon mw-ui-icon-wikimedia-expand"></span> <span>Toggle Migrating a project subsection</span> </button> <ul id="toc-Migrating_a_project-sublist" class="vector-toc-list"> <li id="toc-Importing_code_to_GitLab" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#Importing_code_to_GitLab"> <div class="vector-toc-text"> <span class="vector-toc-numb">5.1</span> <span>Importing code to GitLab</span> </div> </a> <ul id="toc-Importing_code_to_GitLab-sublist" class="vector-toc-list"> <li id="toc-Branch_renaming" class="vector-toc-list-item vector-toc-level-3"> <a class="vector-toc-link" href="#Branch_renaming"> <div class="vector-toc-text"> <span class="vector-toc-numb">5.1.1</span> <span>Branch renaming</span> </div> </a> <ul id="toc-Branch_renaming-sublist" class="vector-toc-list"> </ul> </li> </ul> </li> <li id="toc-Updating_references" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#Updating_references"> <div class="vector-toc-text"> <span class="vector-toc-numb">5.2</span> <span>Updating references</span> </div> </a> <ul id="toc-Updating_references-sublist" class="vector-toc-list"> <li id="toc-Updating_existing_checkouts" class="vector-toc-list-item vector-toc-level-3"> <a class="vector-toc-link" href="#Updating_existing_checkouts"> <div class="vector-toc-text"> <span class="vector-toc-numb">5.2.1</span> <span>Updating existing checkouts</span> </div> </a> <ul id="toc-Updating_existing_checkouts-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Updating_.gitreview" class="vector-toc-list-item vector-toc-level-3"> <a class="vector-toc-link" href="#Updating_.gitreview"> <div class="vector-toc-text"> <span class="vector-toc-numb">5.2.2</span> <span>Updating .gitreview</span> </div> </a> <ul id="toc-Updating_.gitreview-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Updating_Packagist" class="vector-toc-list-item vector-toc-level-3"> <a class="vector-toc-link" href="#Updating_Packagist"> <div class="vector-toc-text"> <span class="vector-toc-numb">5.2.3</span> <span>Updating Packagist</span> </div> </a> <ul id="toc-Updating_Packagist-sublist" class="vector-toc-list"> </ul> </li> </ul> </li> <li id="toc-Archiving_old_projects" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#Archiving_old_projects"> <div class="vector-toc-text"> <span class="vector-toc-numb">5.3</span> <span>Archiving old projects</span> </div> </a> <ul id="toc-Archiving_old_projects-sublist" class="vector-toc-list"> </ul> </li> </ul> </li> <li id="toc-Mirroring_projects_to_other_code_forges" class="vector-toc-list-item vector-toc-level-1 vector-toc-list-item-expanded"> <a class="vector-toc-link" href="#Mirroring_projects_to_other_code_forges"> <div class="vector-toc-text"> <span class="vector-toc-numb">6</span> <span>Mirroring projects to other code forges</span> </div> </a> <ul id="toc-Mirroring_projects_to_other_code_forges-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Enabling_GitLab_CI_for_a_project" class="vector-toc-list-item vector-toc-level-1 vector-toc-list-item-expanded"> <a class="vector-toc-link" href="#Enabling_GitLab_CI_for_a_project"> <div class="vector-toc-text"> <span class="vector-toc-numb">7</span> <span>Enabling GitLab CI for a project</span> </div> </a> <ul id="toc-Enabling_GitLab_CI_for_a_project-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-GitLab_Issues_and_GitLab_Wikis" class="vector-toc-list-item vector-toc-level-1 vector-toc-list-item-expanded"> <a class="vector-toc-link" href="#GitLab_Issues_and_GitLab_Wikis"> <div class="vector-toc-text"> <span class="vector-toc-numb">8</span> <span>GitLab Issues and GitLab Wikis</span> </div> </a> <ul id="toc-GitLab_Issues_and_GitLab_Wikis-sublist" class="vector-toc-list"> </ul> </li> </ul> </div> </div> </nav> </div> </div> <div class="mw-content-container"> <main id="content" class="mw-body"> <header class="mw-body-header vector-page-titlebar"> <nav aria-label="Contents" class="vector-toc-landmark"> <div id="vector-page-titlebar-toc" class="vector-dropdown vector-page-titlebar-toc vector-button-flush-left" title="Table of Contents" > <input type="checkbox" id="vector-page-titlebar-toc-checkbox" role="button" aria-haspopup="true" data-event-name="ui.dropdown-vector-page-titlebar-toc" class="vector-dropdown-checkbox " aria-label="Toggle the table of contents" > <label id="vector-page-titlebar-toc-label" for="vector-page-titlebar-toc-checkbox" class="vector-dropdown-label cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet cdx-button--icon-only " aria-hidden="true" ><span class="vector-icon mw-ui-icon-listBullet mw-ui-icon-wikimedia-listBullet"></span> <span class="vector-dropdown-label-text">Toggle the table of contents</span> </label> <div class="vector-dropdown-content"> <div id="vector-page-titlebar-toc-unpinned-container" class="vector-unpinned-container"> </div> </div> </div> </nav> <h1 id="firstHeading" class="firstHeading mw-first-heading"><span class="mw-page-title-main">GitLab/Hosting a project on GitLab</span></h1> <div class="mw-indicators"> </div> </header> <div class="vector-page-toolbar"> <div class="vector-page-toolbar-container"> <div id="left-navigation"> <nav aria-label="Namespaces"> <div id="p-associated-pages" class="vector-menu vector-menu-tabs mw-portlet mw-portlet-associated-pages" > <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="ca-nstab-main" class="selected vector-tab-noicon mw-list-item"><a href="/wiki/GitLab/Hosting_a_project_on_GitLab" title="View the content page [c]" accesskey="c"><span>Page</span></a></li><li id="ca-talk" class="new vector-tab-noicon mw-list-item"><a href="/w/index.php?title=Talk:GitLab/Hosting_a_project_on_GitLab&action=edit&redlink=1" rel="discussion" class="new" title="Discussion about the content page (page does not exist) [t]" accesskey="t"><span>Discussion</span></a></li> </ul> </div> </div> <div id="vector-variants-dropdown" class="vector-dropdown emptyPortlet" > <input type="checkbox" id="vector-variants-dropdown-checkbox" role="button" aria-haspopup="true" data-event-name="ui.dropdown-vector-variants-dropdown" class="vector-dropdown-checkbox " aria-label="Change language variant" > <label id="vector-variants-dropdown-label" for="vector-variants-dropdown-checkbox" class="vector-dropdown-label cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet" aria-hidden="true" ><span class="vector-dropdown-label-text">English</span> </label> <div class="vector-dropdown-content"> <div id="p-variants" class="vector-menu mw-portlet mw-portlet-variants emptyPortlet" > <div class="vector-menu-content"> <ul class="vector-menu-content-list"> </ul> </div> </div> </div> </div> </nav> </div> <div id="right-navigation" class="vector-collapsible"> <nav aria-label="Views"> <div id="p-views" class="vector-menu vector-menu-tabs mw-portlet mw-portlet-views" > <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="ca-view" class="selected vector-tab-noicon mw-list-item"><a href="/wiki/GitLab/Hosting_a_project_on_GitLab"><span>Read</span></a></li><li id="ca-viewsource" class="vector-tab-noicon mw-list-item"><a href="/w/index.php?title=GitLab/Hosting_a_project_on_GitLab&action=edit" title="This page is protected. You can view its source [e]" accesskey="e"><span>View source</span></a></li><li id="ca-history" class="vector-tab-noicon mw-list-item"><a href="/w/index.php?title=GitLab/Hosting_a_project_on_GitLab&action=history" title="Past revisions of this page [h]" accesskey="h"><span>View history</span></a></li> </ul> </div> </div> </nav> <nav class="vector-page-tools-landmark" aria-label="Page tools"> <div id="vector-page-tools-dropdown" class="vector-dropdown vector-page-tools-dropdown" > <input type="checkbox" id="vector-page-tools-dropdown-checkbox" role="button" aria-haspopup="true" data-event-name="ui.dropdown-vector-page-tools-dropdown" class="vector-dropdown-checkbox " aria-label="Tools" > <label id="vector-page-tools-dropdown-label" for="vector-page-tools-dropdown-checkbox" class="vector-dropdown-label cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet" aria-hidden="true" ><span class="vector-dropdown-label-text">Tools</span> </label> <div class="vector-dropdown-content"> <div id="vector-page-tools-unpinned-container" class="vector-unpinned-container"> <div id="vector-page-tools" class="vector-page-tools vector-pinnable-element"> <div class="vector-pinnable-header vector-page-tools-pinnable-header vector-pinnable-header-unpinned" data-feature-name="page-tools-pinned" data-pinnable-element-id="vector-page-tools" data-pinned-container-id="vector-page-tools-pinned-container" data-unpinned-container-id="vector-page-tools-unpinned-container" > <div class="vector-pinnable-header-label">Tools</div> <button class="vector-pinnable-header-toggle-button vector-pinnable-header-pin-button" data-event-name="pinnable-header.vector-page-tools.pin">move to sidebar</button> <button class="vector-pinnable-header-toggle-button vector-pinnable-header-unpin-button" data-event-name="pinnable-header.vector-page-tools.unpin">hide</button> </div> <div id="p-cactions" class="vector-menu mw-portlet mw-portlet-cactions emptyPortlet vector-has-collapsible-items" title="More options" > <div class="vector-menu-heading"> Actions </div> <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="ca-more-view" class="selected vector-more-collapsible-item mw-list-item"><a href="/wiki/GitLab/Hosting_a_project_on_GitLab"><span>Read</span></a></li><li id="ca-more-viewsource" class="vector-more-collapsible-item mw-list-item"><a href="/w/index.php?title=GitLab/Hosting_a_project_on_GitLab&action=edit"><span>View source</span></a></li><li id="ca-more-history" class="vector-more-collapsible-item mw-list-item"><a href="/w/index.php?title=GitLab/Hosting_a_project_on_GitLab&action=history"><span>View history</span></a></li> </ul> </div> </div> <div id="p-tb" class="vector-menu mw-portlet mw-portlet-tb" > <div class="vector-menu-heading"> General </div> <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="t-whatlinkshere" class="mw-list-item"><a href="/wiki/Special:WhatLinksHere/GitLab/Hosting_a_project_on_GitLab" title="A list of all wiki pages that link here [j]" accesskey="j"><span>What links here</span></a></li><li id="t-recentchangeslinked" class="mw-list-item"><a href="/wiki/Special:RecentChangesLinked/GitLab/Hosting_a_project_on_GitLab" rel="nofollow" title="Recent changes in pages linked from this page [k]" accesskey="k"><span>Related changes</span></a></li><li id="t-upload" class="mw-list-item"><a href="//commons.wikimedia.org/wiki/Special:UploadWizard" title="Upload files [u]" accesskey="u"><span>Upload file</span></a></li><li id="t-permalink" class="mw-list-item"><a href="/w/index.php?title=GitLab/Hosting_a_project_on_GitLab&oldid=6428619" title="Permanent link to this revision of this page"><span>Permanent link</span></a></li><li id="t-info" class="mw-list-item"><a href="/w/index.php?title=GitLab/Hosting_a_project_on_GitLab&action=info" title="More information about this page"><span>Page information</span></a></li><li id="t-cite" class="mw-list-item"><a href="/w/index.php?title=Special:CiteThisPage&page=GitLab%2FHosting_a_project_on_GitLab&id=6428619&wpFormIdentifier=titleform" title="Information on how to cite this page"><span>Cite this page</span></a></li><li id="t-urlshortener" class="mw-list-item"><a href="/w/index.php?title=Special:UrlShortener&url=https%3A%2F%2Fwww.mediawiki.org%2Fwiki%2FGitLab%2FHosting_a_project_on_GitLab"><span>Get shortened URL</span></a></li><li id="t-urlshortener-qrcode" class="mw-list-item"><a href="/w/index.php?title=Special:QrCode&url=https%3A%2F%2Fwww.mediawiki.org%2Fwiki%2FGitLab%2FHosting_a_project_on_GitLab"><span>Download QR code</span></a></li> </ul> </div> </div> <div id="p-coll-print_export" class="vector-menu mw-portlet mw-portlet-coll-print_export" > <div class="vector-menu-heading"> Print/export </div> <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="coll-create_a_book" class="mw-list-item"><a href="/w/index.php?title=Special:Book&bookcmd=book_creator&referer=GitLab%2FHosting+a+project+on+GitLab"><span>Create a book</span></a></li><li id="coll-download-as-rl" class="mw-list-item"><a href="/w/index.php?title=Special:DownloadAsPdf&page=GitLab%2FHosting_a_project_on_GitLab&action=show-download-screen"><span>Download as PDF</span></a></li><li id="t-print" class="mw-list-item"><a href="/w/index.php?title=GitLab/Hosting_a_project_on_GitLab&printable=yes" title="Printable version of this page [p]" accesskey="p"><span>Printable version</span></a></li> </ul> </div> </div> <div id="p-wikibase-otherprojects" class="vector-menu mw-portlet mw-portlet-wikibase-otherprojects emptyPortlet" > <div class="vector-menu-heading"> In other projects </div> <div class="vector-menu-content"> <ul class="vector-menu-content-list"> </ul> </div> </div> </div> </div> </div> </div> </nav> </div> </div> </div> <div class="vector-column-end"> <div class="vector-sticky-pinned-container"> <nav class="vector-page-tools-landmark" aria-label="Page tools"> <div id="vector-page-tools-pinned-container" class="vector-pinned-container"> </div> </nav> <nav class="vector-appearance-landmark" aria-label="Appearance"> <div id="vector-appearance-pinned-container" class="vector-pinned-container"> <div id="vector-appearance" class="vector-appearance vector-pinnable-element"> <div class="vector-pinnable-header vector-appearance-pinnable-header vector-pinnable-header-pinned" data-feature-name="appearance-pinned" data-pinnable-element-id="vector-appearance" data-pinned-container-id="vector-appearance-pinned-container" data-unpinned-container-id="vector-appearance-unpinned-container" > <div class="vector-pinnable-header-label">Appearance</div> <button class="vector-pinnable-header-toggle-button vector-pinnable-header-pin-button" data-event-name="pinnable-header.vector-appearance.pin">move to sidebar</button> <button class="vector-pinnable-header-toggle-button vector-pinnable-header-unpin-button" data-event-name="pinnable-header.vector-appearance.unpin">hide</button> </div> </div> </div> </nav> </div> </div> <div id="bodyContent" class="vector-body" aria-labelledby="firstHeading" data-mw-ve-target-container> <div class="vector-body-before-content"> <div id="siteSub" class="noprint">From mediawiki.org</div> </div> <div id="contentSub"><div id="mw-content-subtitle"><div class="subpages">< <bdi dir="ltr"><a href="/wiki/GitLab" title="GitLab">GitLab</a></bdi></div></div></div> <div id="mw-content-text" class="mw-body-content"><div class="mw-content-ltr mw-parser-output" lang="en" dir="ltr"><style data-mw-deduplicate="TemplateStyles:r7217283">.mw-parser-output table.ambox{margin:0 10%;width:unset;border:1px solid var(--border-color-base,#a2a9b1);border-left:10px solid var(--border-color-progressive,#36c);background-color:var(--background-color-neutral-subtle,#f8f9fa);box-sizing:border-box}.mw-parser-output table.ambox+table.ambox,.mw-parser-output table.ambox+link+table.ambox,.mw-parser-output table.ambox+style+table.ambox{margin-top:-1px}.mw-parser-output .ambox td.mbox-empty-cell{border:none;padding:0;width:1px}.mw-parser-output .ambox th.mbox-text,.mw-parser-output .ambox td.mbox-text{border:none;padding:0.25em 0.5em;width:100%}.mw-parser-output .ambox td.mbox-image{padding:2px 0 2px 0.5em}.mw-parser-output .ambox td.mbox-imageright{padding:2px 0.5em 2px 0}.mw-parser-output table.ambox-notice{border-left-color:var(--border-color-progressive,#36c)}.mw-parser-output table.ambox-speedy{background-color:var(--background-color-error-subtle,#fee7e6)}.mw-parser-output table.ambox-delete,.mw-parser-output table.ambox-speedy{border-left-color:var(--background-color-error--active,#b32424)}.mw-parser-output table.ambox-content{border-left-color:#f28500}.mw-parser-output table.ambox-style{border-left-color:#fc3}.mw-parser-output table.ambox-move{border-left-color:#9932cc}.mw-parser-output table.ambox-protection{border-left-color:var(--border-color-base,#a2a9b1)}html body.mediawiki .mw-parser-output .ambox.mbox-small{clear:right;float:right;margin:4px 0 4px 1em;box-sizing:border-box;width:238px;font-size:88%;line-height:1.25em}html body.mediawiki .mw-parser-output .ambox.mbox-small-left{margin:4px 1em 4px 0;box-sizing:border-box;overflow:hidden;width:238px;border-collapse:collapse;font-size:88%;line-height:1.25em}</style><table class="ambox ambox-speedy plainlinks metadata" role="presentation"><tbody><tr><td class="mbox-image"><div style="width:52px"><span class="skin-invert-image" typeof="mw:File"><span><img src="//upload.wikimedia.org/wikipedia/commons/thumb/4/43/OOjs_UI_icon_language-ltr.svg/40px-OOjs_UI_icon_language-ltr.svg.png" decoding="async" width="40" height="40" class="mw-file-element" srcset="//upload.wikimedia.org/wikipedia/commons/thumb/4/43/OOjs_UI_icon_language-ltr.svg/60px-OOjs_UI_icon_language-ltr.svg.png 1.5x, //upload.wikimedia.org/wikipedia/commons/thumb/4/43/OOjs_UI_icon_language-ltr.svg/80px-OOjs_UI_icon_language-ltr.svg.png 2x" data-file-width="20" data-file-height="20" /></span></span></div></td><td class="mbox-text"><div class="mbox-text-span"><b>Please do not mark this page for translation yet.</b> <br /> It is still being drafted, or it contains incomplete translation markup which should be fixed before marking for translation.</div></td></tr></tbody></table> <style data-mw-deduplicate="TemplateStyles:r6605224">.mw-parser-output .tpl-sidebar{background-color:var(--background-color-interactive-subtle,#f8f9fa);border:1px solid var(--border-color-divider,#a2a9b1);color:var(--color-base,#202122);width:22em;padding:.2em;text-align:center;line-height:1.4em;font-size:88%}.mw-parser-output .tpl-sidebar-pagedir-ltr,.mw-parser-output .tpl-sidebar.tpl-sidebar-floatright{float:right;clear:right;margin:.5em 0 1em 1em}.mw-parser-output .tpl-sidebar-pagedir-rtl,.mw-parser-output .tpl-sidebar.tpl-sidebar-floatleft{float:left;clear:left;margin:.5em 1em 1em 0}.mw-parser-output .tpl-sidebar.tpl-sidebar-floatnone{float:none;clear:both;margin:.5em 0 1em 1em}.mw-parser-output .tpl-sidebar>caption{padding-bottom:.2em;font-size:125%;line-height:1.2em;font-weight:bold}.mw-parser-output .tpl-sidebar>tbody>tr>th,.mw-parser-output .tpl-sidebar>tbody>tr>td{padding:0}.mw-parser-output .tpl-sidebar .tpl-sidebar-topimage>td{padding:.4em 0}.mw-parser-output .tpl-sidebar-imagecaption{padding-top:.2em;line-height:1.2em}.mw-parser-output .tpl-sidebar .tpl-sidebar-pretitle>td{padding-top:.4em;line-height:1.2em}.mw-parser-output .tpl-sidebar .tpl-sidebar-topimage+.tpl-sidebar-pretitle>td{padding-top:.2em}.mw-parser-output .tpl-sidebar .tpl-sidebar-title>th{padding:.2em .4em .2em;font-size:145%;line-height:1.2em}.mw-parser-output .tpl-sidebar .tpl-sidebar-pretitle+.tpl-sidebar-title>th{padding-top:0}.mw-parser-output .tpl-sidebar .tpl-sidebar-image>td{padding:.2em 0 .4em}.mw-parser-output .tpl-sidebar .tpl-sidebar-abovebelow>td{padding:.3em .4em;font-weight:bold}.mw-parser-output .tpl-sidebar .tpl-sidebar-heading>th{padding-top:.2em}.mw-parser-output .tpl-sidebar .tpl-sidebar-image~.tpl-sidebar-heading-first>th{padding-top:.4em}.mw-parser-output .tpl-sidebar .tpl-sidebar-content>td{padding-bottom:.2em}.mw-parser-output .tpl-sidebar :not(.tpl-sidebar-heading)+.tpl-sidebar-content-first>td{padding-top:.2em}.mw-parser-output .tpl-sidebar-navbar>td{font-size:115%}.mw-parser-output .tpl-sidebar-pagedir-ltr .tpl-sidebar-navbar>td{text-align:right}.mw-parser-output .tpl-sidebar-pagedir-rtl .tpl-sidebar-navbar>td{text-align:left}</style><table class="vertical-navbox tpl-sidebar tpl-sidebar-pagedir-ltr nowraplinks" role="navigation" style="width:22em; border-spacing: 0.4em 0;"><tbody><tr class="tpl-sidebar-title"> <th class="" style=""><span typeof="mw:File"><a href="/wiki/GitLab" title="GitLab"><img alt="GitLab" src="//upload.wikimedia.org/wikipedia/commons/thumb/c/c8/GitLab_logo_%282%29.svg/120px-GitLab_logo_%282%29.svg.png" decoding="async" width="100" height="22" class="mw-file-element" srcset="//upload.wikimedia.org/wikipedia/commons/thumb/c/c8/GitLab_logo_%282%29.svg/250px-GitLab_logo_%282%29.svg.png 1.5x" data-file-width="512" data-file-height="111" /></a></span></th> </tr><tr class="tpl-sidebar-content tpl-sidebar-content-first"> <td class="" style=";text-align: left"> <ul><li><a href="/wiki/GitLab/Policy" title="GitLab/Policy">Policy</a></li> <li><a href="/wiki/GitLab/Migration_status" title="GitLab/Migration status">Migration status</a></li></ul> <hr /> <p><a href="/wiki/GitLab/Workflows" title="GitLab/Workflows">Workflows</a> </p> <ul><li><a href="/wiki/GitLab/Workflows/Assumptions" title="GitLab/Workflows/Assumptions">Project setup assumptions</a></li> <li><a href="/wiki/GitLab/Workflows/Registering_an_account_on_GitLab" title="GitLab/Workflows/Registering an account on GitLab">Registering an account on GitLab</a></li> <li><a class="mw-selflink selflink">Hosting a project on GitLab</a> <ul><li><a href="/wiki/GitLab/pipeline_conversion" title="GitLab/pipeline conversion">Pipeline conversion</a></li> <li><a href="/wiki/GitLab/Mirroring_projects" title="GitLab/Mirroring projects">Mirroring projects</a></li> <li><a href="/wiki/GitLab/Workflows/CI" title="GitLab/Workflows/CI">Configuring CI</a></li> <li><a href="/wiki/GitLab/Publishing_docs" title="GitLab/Publishing docs">Publishing documentation</a></li></ul></li> <li><a href="/wiki/GitLab/Workflows/Code_review" title="GitLab/Workflows/Code review">Code review</a> <ul><li><a href="/wiki/GitLab/Workflows/Making_a_merge_request" title="GitLab/Workflows/Making a merge request">Making a merge request</a></li> <li><a href="/wiki/GitLab/Workflows/Squashing" title="GitLab/Workflows/Squashing">Squashing</a></li></ul></li> <li><a href="/wiki/GitLab/Workflows/Security_patches" title="GitLab/Workflows/Security patches">Managing security patches</a></li> <li><a href="/wiki/GitLab/Workflows/Deploying_services_to_production" title="GitLab/Workflows/Deploying services to production">Deploying services to production</a></li></ul> <hr /> <ul><li><a href="/wiki/GitLab/Gerrit_to_GitLab" title="GitLab/Gerrit to GitLab">Gerrit to GitLab</a></li> <li><a href="/wiki/GitLab/Localization_updates" title="GitLab/Localization updates">Localization updates</a></li> <li><a href="https://wikitech.wikimedia.org/wiki/GitLab" class="extiw" title="wikitech:GitLab">wikitech:GitLab</a></li></ul> <hr /> <ul><li><a href="/wiki/Category:GitLab_project_documentation" title="Category:GitLab project documentation">GitLab implementation</a></li></ul></td> </tr><tr class="tpl-sidebar-navbar"> <td style=""><style data-mw-deduplicate="TemplateStyles:r4692751">.mw-parser-output .navbar{display:inline;font-size:88%;font-weight:normal}.mw-parser-output .navbar ul{display:inline;white-space:nowrap}.mw-parser-output .navbar li{word-spacing:-0.125em}.mw-parser-output .navbox .navbar{display:block;font-size:100%}.mw-parser-output .navbox-title .navbar{float:left;text-align:left;margin-right:0.5em;width:6em}</style><span class="noprint plainlinks navbar" style=""><small><span style="white-space:nowrap;word-spacing:-.12em;"><a href="/wiki/Template:GitLab_Navigation" title="Template:GitLab Navigation"><span style="" title="View this template">v</span></a><span style=""> <b>·</b> </span><a class="external text" href="https://www.mediawiki.org/wiki/Template_talk:GitLab_Navigation"><span style="" title="Discuss this template">d</span></a><span style=""> <b>·</b> </span><a class="external text" href="https://www.mediawiki.org/w/index.php?title=Template:GitLab_Navigation&action=edit"><span style="" title="Edit this template">e</span></a></span></small></span></td> </tr> </tbody></table> <meta property="mw:PageProp/toc" /> <div class="mw-heading mw-heading2 ext-discussiontools-init-section"><h2 id="Accessing_GitLab" data-mw-thread-id="h-Accessing_GitLab"><span data-mw-comment-start="" id="h-Accessing_GitLab"></span>Accessing GitLab<span data-mw-comment-end="h-Accessing_GitLab"></span></h2><!--__DTELLIPSISBUTTON__{"threadItem":{"headingLevel":2,"name":"h-","type":"heading","level":0,"id":"h-Accessing_GitLab","replies":[]}}--></div> <p>You can log in to GitLab with a <a href="https://wikitech.wikimedia.org/wiki/Help:Create_a_Wikimedia_developer_account" class="extiw" title="wikitech:Help:Create a Wikimedia developer account">Wikimedia developer account</a>. </p><p>Before you begin using GitLab, you'll need to have your account approved. This may be handled by the <a href="https://wikitech.wikimedia.org/wiki/Tool:Gitlab-account-approval" class="extiw" title="wikitech:Tool:Gitlab-account-approval">GitLab account approval bot</a> within a few minutes, but if not you can initiate human review by filling out <a class="external text" href="https://phabricator.wikimedia.org/maniphest/task/edit/form/117/">the GitLab account approval form on Phabricator</a>. </p> <div class="mw-heading mw-heading2 ext-discussiontools-init-section"><h2 id="Where_should_your_project_live?" data-mw-thread-id="h-Where_should_your_project_live?"><span id="Where_should_your_project_live.3F"></span><span data-mw-comment-start="" id="h-Where_should_your_project_live?"></span>Where should your project live?<span data-mw-comment-end="h-Where_should_your_project_live?"></span></h2><!--__DTELLIPSISBUTTON__{"threadItem":{"headingLevel":2,"name":"h-","type":"heading","level":0,"id":"h-Where_should_your_project_live?","replies":["h-Locating_a_group-Where_should_your_project_live?","h-Creating_a_new_group-Where_should_your_project_live?"]}}--></div> <p>You have two options: </p> <ol><li><b>Host the project under your personal namespace.</b> This is appropriate and expected for things which are of benefit in the Wikimedia movement and/or the MediaWiki ecosystem which are: <ul><li>Personal or user-specific tooling such as dotfiles</li> <li>Early experimental prototypes and short-lived exploratory work</li> <li>Forks of projects you can't push to directly, but wish to make merge requests for</li></ul></li> <li><b>Host the project under a group.</b> This is appropriate for: <ul><li>Long-lived, shared projects</li> <li>...that benefit the Wikimedia movement and/or the MediaWiki ecosystem</li></ul></li></ol> <p>Supported GitLab projects live in a group named for the functional area of code, under the top-level <a href="https://gitlab.wikimedia.org/repos" class="extiw" title="gitlab:repos">/repos</a>. This gives access to a shared pool of CI runners. </p><p>There are some exceptions to this layout, where there are differences in policy around project trust and access to CI runners: </p> <ul><li><a href="https://gitlab.wikimedia.org/toolforge-repos" class="extiw" title="gitlab:toolforge-repos">gitlab:toolforge-repos</a></li> <li><a href="https://gitlab.wikimedia.org/cloudvps-repos" class="extiw" title="gitlab:cloudvps-repos">gitlab:cloudvps-repos</a></li></ul> <p>Users should typically be added to the project's group with an appropriate access level, rather than to the specific project. </p> <div class="mw-heading mw-heading3"><h3 id="Locating_a_group" data-mw-thread-id="h-Locating_a_group-Where_should_your_project_live?"><span data-mw-comment-start="" id="h-Locating_a_group-Where_should_your_project_live?"></span>Locating a group<span data-mw-comment-end="h-Locating_a_group-Where_should_your_project_live?"></span></h3></div> <p>First, check <a href="https://gitlab.wikimedia.org/repos" class="extiw" title="gitlab:repos">the list of subgroups under repos</a> to see if an appropriate group already exists. Most of the existing ones correlate to WMF teams or affiliate organizations, or large functional areas like MediaWiki. </p><p>If you see a group that seems like a match, view the group and click on "Members" under "Manage" in the lefthand sidebar. Ask an existing member to invite you to the group. </p><p>For projects traditionally under the <code>mediawiki</code> namespace on Gerrit, we're porting most of the existing structure across: </p> <ul><li>Extensions: <code>repos/mediawiki/extensions/[project name]</code></li> <li>Skins: <code>repos/mediawiki/skins/[project name]</code></li> <li>Services: <code>repos/mediawiki/services/[project name]</code></li></ul> <p>If your new project fits in one of these categories, create or request a project under the appropriate group. </p><p>Note that while Gerrit supports parent repositories which contain both code and child repos, this is not possible on GitLab. For example, on Gerrit <code>mediawiki/extensions</code> is both a git repo with code and a container for extension repos. On GitLab, so <code>mediawiki/extensions</code> is a group and the code repo there is moving to <code>mediawiki/extensions/all</code>. </p> <div class="mw-heading mw-heading3"><h3 id="Creating_a_new_group" data-mw-thread-id="h-Creating_a_new_group-Where_should_your_project_live?"><span data-mw-comment-start="" id="h-Creating_a_new_group-Where_should_your_project_live?"></span>Creating a new group<span data-mw-comment-end="h-Creating_a_new_group-Where_should_your_project_live?"></span></h3></div> <p>If you do not find an appropriate group but think one should be created please use this <a href="https://phabricator.wikimedia.org/maniphest/task/edit/form/105/" class="extiw" title="phab:maniphest/task/edit/form/105/">form to request a new group</a>. </p><p>Keep in mind that groups may only contain other groups and individual projects. They may not themselves be a code repository, so you may have to change project layouts you are familiar with from Gerrit. </p> <div class="mw-heading mw-heading2 ext-discussiontools-init-section"><h2 id="Creating_a_new_project" data-mw-thread-id="h-Creating_a_new_project"><span data-mw-comment-start="" id="h-Creating_a_new_project"></span>Creating a new project<span data-mw-comment-end="h-Creating_a_new_project"></span></h2><!--__DTELLIPSISBUTTON__{"threadItem":{"headingLevel":2,"name":"h-","type":"heading","level":0,"id":"h-Creating_a_new_project","replies":[]}}--></div> <ol><li>Visit <a class="external free" href="https://gitlab.wikimedia.org">https://gitlab.wikimedia.org</a> and make sure you're signed in with your <a href="https://wikitech.wikimedia.org/wiki/Help:Create_a_Wikimedia_developer_account" class="extiw" title="wikitech:Help:Create a Wikimedia developer account">Wikimedia developer account</a>.</li> <li>Click the "New Project" button</li> <li>Click "Create blank project" or "Create from template" <ul><li>"Create from template" will prompt you to select from a list of templates, then on to the project creation form</li> <li>Keep in mind that templates may include use of features which are not supported on the Wikimedia instance, such as issues and wikis. If so, these will be automatically disabled at some point after your project is created.</li></ul></li> <li>Look under "Project URL" and click the "Pick a group or namespace" field <ul><li>For a project under your user namespace, type your username in the search box or scroll down until you see the "Users" section and select your username</li> <li>For a project under a group, type the group name in the search box or scroll until you see it</li></ul></li> <li>Click "Create project"</li></ol> <div class="mw-heading mw-heading2 ext-discussiontools-init-section"><h2 id="GitLab_private_(restricted)_repos" data-mw-thread-id="h-GitLab_private_(restricted)_repos"><span id="GitLab_private_.28restricted.29_repos"></span><span data-mw-comment-start="" id="h-GitLab_private_(restricted)_repos"></span>GitLab private (restricted) repos<span data-mw-comment-end="h-GitLab_private_(restricted)_repos"></span></h2><!--__DTELLIPSISBUTTON__{"threadItem":{"headingLevel":2,"name":"h-","type":"heading","level":0,"id":"h-GitLab_private_(restricted)_repos","replies":["h-GitLab_private_repos_are_for_restricted_information-GitLab_private_(restricted)_repos","h-GitLab_private_repos_are_NOT_for_confidential_information-GitLab_private_(restricted)_repos","h-Requesting_a_private_(restricted)_repo-GitLab_private_(restricted)_repos","h-GitLab_private_repo_requirements-GitLab_private_(restricted)_repos"]}}--></div> <p>Wikimedia aims for open collaboration—free code is free knowledge. </p><p>However, there are times when developers may wish to share sensitive information within a restricted group. </p> <div class="mw-heading mw-heading3"><h3 id="GitLab_private_repos_are_for_restricted_information" data-mw-thread-id="h-GitLab_private_repos_are_for_restricted_information-GitLab_private_(restricted)_repos"><span data-mw-comment-start="" id="h-GitLab_private_repos_are_for_restricted_information-GitLab_private_(restricted)_repos"></span>GitLab private repos are for restricted information<span data-mw-comment-end="h-GitLab_private_repos_are_for_restricted_information-GitLab_private_(restricted)_repos"></span></h3></div> <p><b>Restricted information</b> is non-confidential information that is sensitive and should only be shared with a small group. </p><p>Examples include: </p> <ul><li>Security incident response activities</li> <li>Security configurations (e.g., CAPTCHA dictionaries, spam filter settings)</li> <li>Embargoed information, soon to be public</li> <li>Hiring tasks</li> <li>Data that is unlikely to be used to cause harm and is private for administrative reasons</li> <li>Sensitive analyses of internal data</li></ul> <div class="mw-heading mw-heading3"><h3 id="GitLab_private_repos_are_NOT_for_confidential_information" data-mw-thread-id="h-GitLab_private_repos_are_NOT_for_confidential_information-GitLab_private_(restricted)_repos"><span data-mw-comment-start="" id="h-GitLab_private_repos_are_NOT_for_confidential_information-GitLab_private_(restricted)_repos"></span>GitLab private repos are NOT for confidential information<span data-mw-comment-end="h-GitLab_private_repos_are_NOT_for_confidential_information-GitLab_private_(restricted)_repos"></span></h3></div> <p><b>Confidential information</b> is regulated, privileged, or highly sensitive. </p><p><b>Confidential information is <u>NEVER ALLOWED</u> in GitLab private repos.</b> </p><p>Examples include: </p> <ul><li>Personal Identifiable Information (<a href="https://foundation.wikimedia.org/wiki/Policy:Privacy_policy#Definitions" class="extiw" title="foundation:Policy:Privacy policy">PII</a>)</li> <li>IP addresses</li> <li>Plain-text or weak-encryption (e.g., md5) passwords</li> <li>Private key material</li></ul> <div class="mw-heading mw-heading3"><h3 id="Requesting_a_private_(restricted)_repo" data-mw-thread-id="h-Requesting_a_private_(restricted)_repo-GitLab_private_(restricted)_repos"><span id="Requesting_a_private_.28restricted.29_repo"></span><span data-mw-comment-start="" id="h-Requesting_a_private_(restricted)_repo-GitLab_private_(restricted)_repos"></span>Requesting a private (restricted) repo<span data-mw-comment-end="h-Requesting_a_private_(restricted)_repo-GitLab_private_(restricted)_repos"></span></h3></div> <p><b>Prerequisites</b> </p> <ul><li>Ensure that you and any collaborators are using strong passwords and have two-factor authentication set up for your account</li></ul> <p><b>Process</b> </p><p>To request a Private repo, file a request on Wikimedia Phabricator the <a class="external text" href="https://phabricator.wikimedia.org/maniphest/task/edit/form/119/">GitLab private (restricted) repo request form</a> </p><p>If you're requesting a private repo within your <i>personal</i> namespace (as opposed to a <i>group</i> namespace e.g. <code>/repos/{team-name}</code>), you need to make a public repo and then that can be <i>converted</i> into a private repo. A GitLab admin cannot make a private repo within your personal namespace. </p><p>Once you request it, that request will be reviewed by at the next weekly Developer Experience team meeting and somebody will be assigned to handle it. </p> <div class="mw-heading mw-heading3"><h3 id="GitLab_private_repo_requirements" data-mw-thread-id="h-GitLab_private_repo_requirements-GitLab_private_(restricted)_repos"><span data-mw-comment-start="" id="h-GitLab_private_repo_requirements-GitLab_private_(restricted)_repos"></span>GitLab private repo requirements<span data-mw-comment-end="h-GitLab_private_repo_requirements-GitLab_private_(restricted)_repos"></span></h3></div> <ul><li><b>If you intend to make a private repo public at some point, create a new public repo instead when you're ready.</b> If there was sensitive/restricted information in the repo at some point, making it public will also make the entire commit history public. Once you get a repo to a "ready for public consumption" state, you should start a fresh commit history. What to do with the original (private) repo is up to you, but deleting it and using the new (public) repo as the source of truth going forward is probably the safest option.</li> <li><b>Do not have a single shared repository for multiple unrelated or loosely connected projects; use one repo per logical project.</b> Since we have to request private repos it may be tempting to just request a single repo for all private work instead of requesting separate repos for different projects. However this creates additional, unnecessary risk. Having multiple repos means you can manage access for them separately, and giving somebody access to one repo will not automatically give them access to other repos/projects.</li> <li><b>PII like IP addresses cannot be shared even in private repos, use <code>WMF-NDA</code>-restricted tasks in Phabricator only.</b> There's an established, recognized process for keeping Phabricator info Security- or T&S-protected, and it also decreases the number of potential points of failure for that information. If you have to analyze traffic or edit data for specific IP addresses, either: <ul><li>Store the IP addresses in a separate table to join with</li> <li>Use variables in your query <ul><li>Store the IP addresses in a non-tracked/committed file or as environment variables</li> <li>Read the file or access the environment variables in the notebook</li> <li>Fill-in the variables in the query with the values</li> <li>Don't print the query before running it (or if you did for troubleshooting, make sure to remove those cells before committing)</li></ul></li> <li>Essentially: a user should not be able to use your notebook or repo's commit history to see which pages an IP address visited more than 90 days ago. (Or what IP addresses a registered user used more than 90 days ago.)</li></ul></li></ul> <div class="mw-heading mw-heading2 ext-discussiontools-init-section"><h2 id="Migrating_a_project" data-mw-thread-id="h-Migrating_a_project"><span data-mw-comment-start="" id="h-Migrating_a_project"></span>Migrating a project<span data-mw-comment-end="h-Migrating_a_project"></span></h2><!--__DTELLIPSISBUTTON__{"threadItem":{"headingLevel":2,"name":"h-","type":"heading","level":0,"id":"h-Migrating_a_project","replies":["h-Importing_code_to_GitLab-Migrating_a_project","h-Updating_references-Migrating_a_project","h-Archiving_old_projects-Migrating_a_project"]}}--></div> <div class="mw-heading mw-heading3"><h3 id="Importing_code_to_GitLab" data-mw-thread-id="h-Importing_code_to_GitLab-Migrating_a_project"><span data-mw-comment-start="" id="h-Importing_code_to_GitLab-Migrating_a_project"></span>Importing code to GitLab<span data-mw-comment-end="h-Importing_code_to_GitLab-Migrating_a_project"></span></h3></div> <ol><li>Click <a class="external text" href="https://gitlab.wikimedia.org/projects/new#import_project">New Project > Import Project</a></li> <li>Choose Repository by URL</li> <li>Get URL from source repository <ul><li>Go to source code management tool (Gerrit, GitHub, gitlab.com, etc.), find the https URL. It will look something like: <a class="external free" href="https://gerrit.wikimedia.org/r/mediawiki/services/">https://gerrit.wikimedia.org/r/mediawiki/services/</a>[project]</li></ul></li> <li>Paste the URL into "Git repository URL"</li> <li>Fill in the other fields: <ul><li>Name can be free-form</li> <li>Slug should correspond to previously existing repo name</li> <li>Project description should contain additional project details</li> <li>Visibility will be public by default, you will likely not be able to change this.</li></ul></li> <li>Press "Create Project"</li></ol> <p>This will create a complete copy of the repository, including all branches and review notes from Gerrit. </p> <div class="mw-heading mw-heading4"><h4 id="Branch_renaming" data-mw-thread-id="h-Branch_renaming-Importing_code_to_GitLab"><span data-mw-comment-start="" id="h-Branch_renaming-Importing_code_to_GitLab"></span>Branch renaming<span data-mw-comment-end="h-Branch_renaming-Importing_code_to_GitLab"></span></h4></div> <p>By policy (see <a href="https://phabricator.wikimedia.org/T281593" class="extiw" title="phab:T281593">phab:T281593</a>), repositories on GitLab should use "main" as a default branch name, <i>unless</i> they already use some other default than "master", such as "production" or "wmf/stable": </p> <ul><li>Code -> Branches -> New branch -> Called main</li> <li>Settings -> Repository -> Branch defaults -> main</li> <li>Settings -> Repository -> Protected branches -> add main -> Protect</li> <li>Code -> Branches -> three dots menu for master -> Delete Protected branch -> type master and confirm</li></ul> <div class="mw-heading mw-heading3"><h3 id="Updating_references" data-mw-thread-id="h-Updating_references-Migrating_a_project"><span data-mw-comment-start="" id="h-Updating_references-Migrating_a_project"></span>Updating references<span data-mw-comment-end="h-Updating_references-Migrating_a_project"></span></h3></div> <p>All references to the repo need to be updated. This may include existing checkouts, submodule URLs, scripts, Puppet configuration, translatewiki.net configuration, etc. </p><p>Tip: Use <a rel="nofollow" class="external text" href="https://codesearch.wmcloud.org/search/">codesearch</a> to find references in Wikimedia code. </p> <div class="mw-heading mw-heading4"><h4 id="Updating_existing_checkouts" data-mw-thread-id="h-Updating_existing_checkouts-Updating_references"><span data-mw-comment-start="" id="h-Updating_existing_checkouts-Updating_references"></span>Updating existing checkouts<span data-mw-comment-end="h-Updating_existing_checkouts-Updating_references"></span></h4></div> <pre>git remote set-url origin [gitlab url] git fetch git checkout main git branch -d master </pre> <div class="mw-heading mw-heading4"><h4 id="Updating_.gitreview" data-mw-thread-id="h-Updating_.gitreview-Updating_references"><span data-mw-comment-start="" id="h-Updating_.gitreview-Updating_references"></span>Updating .gitreview<span data-mw-comment-end="h-Updating_.gitreview-Updating_references"></span></h4></div> <p>If there's an existing <code>.gitreview</code>, update the file with GitLab info (for users who may want to use <a rel="nofollow" class="external text" href="https://github.com/yaoyuannnn/gerritlab">gerritlab</a>), using the example below as a template. Replace <code>NNNN</code> with your project id (which appears in the kabob menu at top right of the page when you visit the repo in <a class="external free" href="https://gitlab.wikimedia.org">https://gitlab.wikimedia.org</a>). </p> <div class="mw-highlight mw-highlight-lang-ini mw-content-ltr" dir="ltr"><pre><span></span><span class="k">[origin]</span> <span class="na">host</span><span class="o">=</span><span class="s">https://gitlab.wikimedia.org</span> <span class="na">project_id</span><span class="o">=</span><span class="s">NNNN</span> <span class="na">target_branch</span><span class="o">=</span><span class="s">main</span> <span class="na">remove_source_branch</span><span class="o">=</span><span class="s">True</span> </pre></div> <div class="mw-heading mw-heading4"><h4 id="Updating_Packagist" data-mw-thread-id="h-Updating_Packagist-Updating_references"><span data-mw-comment-start="" id="h-Updating_Packagist-Updating_references"></span>Updating Packagist<span data-mw-comment-end="h-Updating_Packagist-Updating_references"></span></h4></div> <p>Update the repository URL on the packagist website from GitHub to the GitLab url. </p><p>Follow the instructions at <a rel="nofollow" class="external free" href="https://packagist.org/about#how-to-update-packages">https://packagist.org/about#how-to-update-packages</a> on how to enable integration on GitLab. You may need to get an API key from someone with access to either the <code>mediawiki</code> or <code>wikimedia</code> account. </p> <div class="mw-heading mw-heading3"><h3 id="Archiving_old_projects" data-mw-thread-id="h-Archiving_old_projects-Migrating_a_project"><span data-mw-comment-start="" id="h-Archiving_old_projects-Migrating_a_project"></span>Archiving old projects<span data-mw-comment-end="h-Archiving_old_projects-Migrating_a_project"></span></h3></div> <ul><li>File a task on the <a class="external text" href="https://phabricator.wikimedia.org/project/view/2829/">Projects-Cleanup</a> workboard.</li> <li>The steps to archive are: <ul><li><b>Archive the Gerrit project</b> <ul><li>Add a <code>MOVED_TO_GITLAB</code> orphan branch <ul><li>That branch should contain a <code>README.md</code> with a pointer to the new repo on GitLab</li></ul></li> <li>Add <code>[MOVED TO GITLAB]</code> to the project description</li> <li>Abandon any open code changes in gerrit with a note pointing to the new project</li></ul></li> <li><b>Remove the project from the old CI system</b> <ul><li>Within the <a class="external text" href="https://gerrit.wikimedia.org/g/integration/config">integration/config</a> project, use the <code>zuul/archiveproject.py</code> script to remove your project from our existing CI</li></ul></li></ul></li></ul> <div class="mw-heading mw-heading2 ext-discussiontools-init-section"><h2 id="Mirroring_projects_to_other_code_forges" data-mw-thread-id="h-Mirroring_projects_to_other_code_forges"><span data-mw-comment-start="" id="h-Mirroring_projects_to_other_code_forges"></span>Mirroring projects to other code forges<span data-mw-comment-end="h-Mirroring_projects_to_other_code_forges"></span></h2><!--__DTELLIPSISBUTTON__{"threadItem":{"headingLevel":2,"name":"h-","type":"heading","level":0,"id":"h-Mirroring_projects_to_other_code_forges","replies":[]}}--></div> <p>See <a href="/wiki/GitLab/Mirroring_projects" title="GitLab/Mirroring projects">GitLab/Mirroring projects</a>. </p> <div class="mw-heading mw-heading2 ext-discussiontools-init-section"><h2 id="Enabling_GitLab_CI_for_a_project" data-mw-thread-id="h-Enabling_GitLab_CI_for_a_project"><span data-mw-comment-start="" id="h-Enabling_GitLab_CI_for_a_project"></span>Enabling GitLab CI for a project<span data-mw-comment-end="h-Enabling_GitLab_CI_for_a_project"></span></h2><!--__DTELLIPSISBUTTON__{"threadItem":{"headingLevel":2,"name":"h-","type":"heading","level":0,"id":"h-Enabling_GitLab_CI_for_a_project","replies":[]}}--></div> <p>For new projects, see <a href="/wiki/GitLab/Workflows/CI" title="GitLab/Workflows/CI">GitLab/Workflows/CI</a>. </p><p>For projects with an existing <code>.pipeline/config</code>, see <a href="/wiki/GitLab/pipeline_conversion" title="GitLab/pipeline conversion">GitLab/pipeline conversion</a>. </p><p>To publish docs to <code>doc.wikimedia.org</code>, see <a href="/wiki/GitLab/Publishing_docs" title="GitLab/Publishing docs">GitLab/Publishing docs</a>. </p><p>For a complete overview of the deployment pipeline, see <a href="/wiki/GitLab/Workflows/Deploying_services_to_production" title="GitLab/Workflows/Deploying services to production">GitLab/Workflows/Deploying_services_to_production</a>. </p> <div class="mw-heading mw-heading2 ext-discussiontools-init-section"><h2 id="GitLab_Issues_and_GitLab_Wikis" data-mw-thread-id="h-GitLab_Issues_and_GitLab_Wikis"><span data-mw-comment-start="" id="h-GitLab_Issues_and_GitLab_Wikis"></span>GitLab Issues and GitLab Wikis<span data-mw-comment-end="h-GitLab_Issues_and_GitLab_Wikis"></span></h2><!--__DTELLIPSISBUTTON__{"threadItem":{"headingLevel":2,"name":"h-","type":"heading","level":0,"id":"h-GitLab_Issues_and_GitLab_Wikis","replies":[]}}--></div> <p>Per <a href="/wiki/GitLab_consultation#FAQ" class="mw-redirect" title="GitLab consultation">the GitLab community consultation</a>, GitLab Issues and Wikis are disabled for each project. This is enforced on an ongoing basis by <a href="https://gitlab.wikimedia.org/repos/releng/gitlab-settings" class="extiw" title="gitlab:repos/releng/gitlab-settings">gitlab-settings</a>. </p> <!-- NewPP limit report Parsed by mw‐web.eqiad.main‐58c4b96c94‐r28tn Cached time: 20250321205039 Cache expiry: 2592000 Reduced expiry: false Complications: [show‐toc] DiscussionTools time usage: 0.015 seconds CPU time usage: 0.113 seconds Real time usage: 0.207 seconds Preprocessor visited node count: 502/1000000 Post‐expand include size: 10759/2097152 bytes Template argument size: 2667/2097152 bytes Highest expansion depth: 12/100 Expensive parser function count: 3/500 Unstrip recursion depth: 0/20 Unstrip post‐expand size: 5121/5000000 bytes Lua time usage: 0.027/10.000 seconds Lua memory usage: 892463/52428800 bytes Number of Wikibase entities loaded: 0/400 --> <!-- Transclusion expansion time report (%,ms,calls,template) 100.00% 93.571 1 -total 57.64% 53.931 1 Template:DoNotTranslate 42.22% 39.503 1 Template:GitLab_Navigation 39.68% 37.128 1 Template:Sidebar 35.40% 33.121 1 Template:Ambox 13.28% 12.429 1 Template:Navbar 5.00% 4.676 1 Template:Dir 2.81% 2.628 1 Template:Pagelang 2.76% 2.583 3 Template:Transclude 2.12% 1.981 1 Template:WithEn --> <!-- Saved in parser cache with key mediawikiwiki:pcache:1455050:|#|:idhash:canonical and timestamp 20250321205039 and revision id 6428619. Rendering was triggered because: page-view --> </div><!--esi <esi:include src="/esitest-fa8a495983347898/content" /> --><noscript><img src="https://auth.wikimedia.org/loginwiki/wiki/Special:CentralAutoLogin/start?useformat=desktop&type=1x1&usesul3=1" alt="" width="1" height="1" style="border: none; position: absolute;"></noscript> <div class="printfooter" data-nosnippet="">Retrieved from "<a dir="ltr" href="https://www.mediawiki.org/w/index.php?title=GitLab/Hosting_a_project_on_GitLab&oldid=6428619">https://www.mediawiki.org/w/index.php?title=GitLab/Hosting_a_project_on_GitLab&oldid=6428619</a>"</div></div> <div id="catlinks" class="catlinks" data-mw="interface"><div id="mw-normal-catlinks" class="mw-normal-catlinks"><a href="/wiki/Special:Categories" title="Special:Categories">Category</a>: <ul><li><a href="/wiki/Category:GitLab_technical_documentation" title="Category:GitLab technical documentation">GitLab technical documentation</a></li></ul></div></div> </div> </main> </div> <div class="mw-footer-container"> <footer id="footer" class="mw-footer" > <ul id="footer-info"> <li id="footer-info-lastmod"> This page was last edited on 26 March 2024, at 23:32.</li> <li id="footer-info-copyright">Text is available under the <a rel="nofollow" class="external text" href="https://creativecommons.org/licenses/by-sa/4.0/">Creative Commons Attribution-ShareAlike License</a>; additional terms may apply. Text in <a class="external text" href="https://www.mediawiki.org/wiki/Special:MyLanguage/Help:Contents">the Help: namespace</a> is available under the <a rel="nofollow" class="external text" href="https://creativecommons.org/publicdomain/zero/1.0/">Creative Commons CC0 License</a>. By using this site, you agree to the <a class="external text" href="https://foundation.wikimedia.org/wiki/Special:MyLanguage/Policy:Terms_of_Use">Terms of Use</a> and <a class="external text" href="https://foundation.wikimedia.org/wiki/Special:MyLanguage/Policy:Privacy_policy">Privacy Policy</a>.</li> </ul> <ul id="footer-places"> <li id="footer-places-privacy"><a href="https://foundation.wikimedia.org/wiki/Special:MyLanguage/Policy:Privacy_policy">Privacy policy</a></li> <li id="footer-places-about"><a href="/wiki/Project:About">About mediawiki.org</a></li> <li id="footer-places-disclaimers"><a href="/wiki/Project:General_disclaimer">Disclaimers</a></li> <li id="footer-places-wm-codeofconduct"><a href="https://www.mediawiki.org/wiki/Special:MyLanguage/Code_of_Conduct">Code of Conduct</a></li> <li id="footer-places-developers"><a href="https://developer.wikimedia.org">Developers</a></li> <li id="footer-places-statslink"><a href="https://stats.wikimedia.org/#/www.mediawiki.org">Statistics</a></li> <li id="footer-places-cookiestatement"><a href="https://foundation.wikimedia.org/wiki/Special:MyLanguage/Policy:Cookie_statement">Cookie statement</a></li> <li id="footer-places-mobileview"><a href="//m.mediawiki.org/w/index.php?title=GitLab/Hosting_a_project_on_GitLab&mobileaction=toggle_view_mobile" class="noprint stopMobileRedirectToggle">Mobile view</a></li> </ul> <ul id="footer-icons" class="noprint"> <li id="footer-copyrightico"><a href="https://www.wikimedia.org/" class="cdx-button cdx-button--fake-button cdx-button--size-large cdx-button--fake-button--enabled"><picture><source media="(min-width: 500px)" srcset="/static/images/footer/wikimedia-button.svg" width="84" height="29"><img src="/static/images/footer/wikimedia.svg" width="25" height="25" alt="Wikimedia Foundation" lang="en" loading="lazy"></picture></a></li> <li id="footer-poweredbyico"><a href="https://www.mediawiki.org/" class="cdx-button cdx-button--fake-button cdx-button--size-large cdx-button--fake-button--enabled"><picture><source media="(min-width: 500px)" srcset="/w/resources/assets/poweredby_mediawiki.svg" width="88" height="31"><img src="/w/resources/assets/mediawiki_compact.svg" alt="Powered by MediaWiki" lang="en" width="25" height="25" loading="lazy"></picture></a></li> </ul> </footer> </div> </div> </div> <div class="vector-header-container vector-sticky-header-container"> <div id="vector-sticky-header" class="vector-sticky-header"> <div class="vector-sticky-header-start"> <div class="vector-sticky-header-icon-start vector-button-flush-left vector-button-flush-right" aria-hidden="true"> <button class="cdx-button cdx-button--weight-quiet cdx-button--icon-only vector-sticky-header-search-toggle" tabindex="-1" data-event-name="ui.vector-sticky-search-form.icon"><span class="vector-icon mw-ui-icon-search mw-ui-icon-wikimedia-search"></span> <span>Search</span> </button> </div> <div role="search" class="vector-search-box-vue vector-search-box-show-thumbnail vector-search-box"> <div class="vector-typeahead-search-container"> <div class="cdx-typeahead-search cdx-typeahead-search--show-thumbnail"> <form action="/w/index.php" id="vector-sticky-search-form" class="cdx-search-input cdx-search-input--has-end-button"> <div class="cdx-search-input__input-wrapper" data-search-loc="header-moved"> <div class="cdx-text-input cdx-text-input--has-start-icon"> <input class="cdx-text-input__input" type="search" name="search" placeholder="Search mediawiki.org"> <span class="cdx-text-input__icon cdx-text-input__start-icon"></span> </div> <input type="hidden" name="title" value="Special:Search"> </div> <button class="cdx-button cdx-search-input__end-button">Search</button> </form> </div> </div> </div> <div class="vector-sticky-header-context-bar"> <nav aria-label="Contents" class="vector-toc-landmark"> <div id="vector-sticky-header-toc" class="vector-dropdown mw-portlet mw-portlet-sticky-header-toc vector-sticky-header-toc vector-button-flush-left" > <input type="checkbox" id="vector-sticky-header-toc-checkbox" role="button" aria-haspopup="true" data-event-name="ui.dropdown-vector-sticky-header-toc" class="vector-dropdown-checkbox " aria-label="Toggle the table of contents" > <label id="vector-sticky-header-toc-label" for="vector-sticky-header-toc-checkbox" class="vector-dropdown-label cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet cdx-button--icon-only " aria-hidden="true" ><span class="vector-icon mw-ui-icon-listBullet mw-ui-icon-wikimedia-listBullet"></span> <span class="vector-dropdown-label-text">Toggle the table of contents</span> </label> <div class="vector-dropdown-content"> <div id="vector-sticky-header-toc-unpinned-container" class="vector-unpinned-container"> </div> </div> </div> </nav> <div class="vector-sticky-header-context-bar-primary" aria-hidden="true" ><span class="mw-page-title-main">GitLab/Hosting a project on GitLab</span></div> </div> </div> <div class="vector-sticky-header-end" aria-hidden="true"> <div class="vector-sticky-header-icons"> <a href="#" class="cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet cdx-button--icon-only" id="ca-talk-sticky-header" tabindex="-1" data-event-name="talk-sticky-header"><span class="vector-icon mw-ui-icon-speechBubbles mw-ui-icon-wikimedia-speechBubbles"></span> <span></span> </a> <a href="#" class="cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet cdx-button--icon-only" id="ca-subject-sticky-header" tabindex="-1" data-event-name="subject-sticky-header"><span class="vector-icon mw-ui-icon-article mw-ui-icon-wikimedia-article"></span> <span></span> </a> <a href="#" class="cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet cdx-button--icon-only" id="ca-history-sticky-header" tabindex="-1" data-event-name="history-sticky-header"><span class="vector-icon mw-ui-icon-wikimedia-history mw-ui-icon-wikimedia-wikimedia-history"></span> <span></span> </a> <a href="#" class="cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet cdx-button--icon-only mw-watchlink" id="ca-watchstar-sticky-header" tabindex="-1" data-event-name="watch-sticky-header"><span class="vector-icon mw-ui-icon-wikimedia-star mw-ui-icon-wikimedia-wikimedia-star"></span> <span></span> </a> <a href="#" class="cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet cdx-button--icon-only" id="ca-edit-sticky-header" tabindex="-1" data-event-name="wikitext-edit-sticky-header"><span class="vector-icon mw-ui-icon-wikimedia-wikiText mw-ui-icon-wikimedia-wikimedia-wikiText"></span> <span></span> </a> <a href="#" class="cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet cdx-button--icon-only" id="ca-ve-edit-sticky-header" tabindex="-1" data-event-name="ve-edit-sticky-header"><span class="vector-icon mw-ui-icon-wikimedia-edit mw-ui-icon-wikimedia-wikimedia-edit"></span> <span></span> </a> <a href="#" class="cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet cdx-button--icon-only" id="ca-viewsource-sticky-header" tabindex="-1" data-event-name="ve-edit-protected-sticky-header"><span class="vector-icon mw-ui-icon-wikimedia-editLock mw-ui-icon-wikimedia-wikimedia-editLock"></span> <span></span> </a> </div> <div class="vector-sticky-header-buttons"> <a href="#" class="cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet cdx-button--action-progressive" id="ca-addsection-sticky-header" tabindex="-1" data-event-name="addsection-sticky-header"><span class="vector-icon mw-ui-icon-speechBubbleAdd-progressive mw-ui-icon-wikimedia-speechBubbleAdd-progressive"></span> <span>Add topic</span> </a> </div> <div class="vector-sticky-header-icon-end"> <div class="vector-user-links"> </div> </div> </div> </div> </div> <div class="mw-portlet mw-portlet-dock-bottom emptyPortlet" id="p-dock-bottom"> <ul> </ul> </div> <script>(RLQ=window.RLQ||[]).push(function(){mw.config.set({"wgHostname":"mw-web.codfw.main-6f5b484c85-9rcnc","wgBackendResponseTime":130,"wgDiscussionToolsPageThreads":[{"headingLevel":2,"name":"h-","type":"heading","level":0,"id":"h-Accessing_GitLab","replies":[]},{"headingLevel":2,"name":"h-","type":"heading","level":0,"id":"h-Where_should_your_project_live?","replies":[{"headingLevel":3,"name":"h-","type":"heading","level":0,"id":"h-Locating_a_group-Where_should_your_project_live?","replies":[]},{"headingLevel":3,"name":"h-","type":"heading","level":0,"id":"h-Creating_a_new_group-Where_should_your_project_live?","replies":[]}]},{"headingLevel":2,"name":"h-","type":"heading","level":0,"id":"h-Creating_a_new_project","replies":[]},{"headingLevel":2,"name":"h-","type":"heading","level":0,"id":"h-GitLab_private_(restricted)_repos","replies":[{"headingLevel":3,"name":"h-","type":"heading","level":0,"id":"h-GitLab_private_repos_are_for_restricted_information-GitLab_private_(restricted)_repos","replies":[]},{"headingLevel":3,"name":"h-","type":"heading","level":0,"id":"h-GitLab_private_repos_are_NOT_for_confidential_information-GitLab_private_(restricted)_repos","replies":[]},{"headingLevel":3,"name":"h-","type":"heading","level":0,"id":"h-Requesting_a_private_(restricted)_repo-GitLab_private_(restricted)_repos","replies":[]},{"headingLevel":3,"name":"h-","type":"heading","level":0,"id":"h-GitLab_private_repo_requirements-GitLab_private_(restricted)_repos","replies":[]}]},{"headingLevel":2,"name":"h-","type":"heading","level":0,"id":"h-Migrating_a_project","replies":[{"headingLevel":3,"name":"h-","type":"heading","level":0,"id":"h-Importing_code_to_GitLab-Migrating_a_project","replies":[{"headingLevel":4,"name":"h-","type":"heading","level":0,"id":"h-Branch_renaming-Importing_code_to_GitLab","replies":[]}]},{"headingLevel":3,"name":"h-","type":"heading","level":0,"id":"h-Updating_references-Migrating_a_project","replies":[{"headingLevel":4,"name":"h-","type":"heading","level":0,"id":"h-Updating_existing_checkouts-Updating_references","replies":[]},{"headingLevel":4,"name":"h-","type":"heading","level":0,"id":"h-Updating_.gitreview-Updating_references","replies":[]},{"headingLevel":4,"name":"h-","type":"heading","level":0,"id":"h-Updating_Packagist-Updating_references","replies":[]}]},{"headingLevel":3,"name":"h-","type":"heading","level":0,"id":"h-Archiving_old_projects-Migrating_a_project","replies":[]}]},{"headingLevel":2,"name":"h-","type":"heading","level":0,"id":"h-Mirroring_projects_to_other_code_forges","replies":[]},{"headingLevel":2,"name":"h-","type":"heading","level":0,"id":"h-Enabling_GitLab_CI_for_a_project","replies":[]},{"headingLevel":2,"name":"h-","type":"heading","level":0,"id":"h-GitLab_Issues_and_GitLab_Wikis","replies":[]}],"wgPageParseReport":{"discussiontools":{"limitreport-timeusage":"0.015"},"limitreport":{"cputime":"0.113","walltime":"0.207","ppvisitednodes":{"value":502,"limit":1000000},"postexpandincludesize":{"value":10759,"limit":2097152},"templateargumentsize":{"value":2667,"limit":2097152},"expansiondepth":{"value":12,"limit":100},"expensivefunctioncount":{"value":3,"limit":500},"unstrip-depth":{"value":0,"limit":20},"unstrip-size":{"value":5121,"limit":5000000},"entityaccesscount":{"value":0,"limit":400},"timingprofile":["100.00% 93.571 1 -total"," 57.64% 53.931 1 Template:DoNotTranslate"," 42.22% 39.503 1 Template:GitLab_Navigation"," 39.68% 37.128 1 Template:Sidebar"," 35.40% 33.121 1 Template:Ambox"," 13.28% 12.429 1 Template:Navbar"," 5.00% 4.676 1 Template:Dir"," 2.81% 2.628 1 Template:Pagelang"," 2.76% 2.583 3 Template:Transclude"," 2.12% 1.981 1 Template:WithEn"]},"scribunto":{"limitreport-timeusage":{"value":"0.027","limit":"10.000"},"limitreport-memusage":{"value":892463,"limit":52428800}},"cachereport":{"origin":"mw-web.eqiad.main-58c4b96c94-r28tn","timestamp":"20250321205039","ttl":2592000,"transientcontent":false}}});});</script> </body> </html>