gitlab-org--gitlab-foss/doc/administration/raketasks/project_import_export.md

2.3 KiB

stage group info
none unassigned To determine the technical writer assigned to the Stage/Group associated with this page, see https://about.gitlab.com/handbook/engineering/ux/technical-writing/#designated-technical-writers

Project import/export administration (CORE ONLY)

  • Introduced in GitLab 8.9.
  • From GitLab 11.3, import/export can use object storage automatically.

GitLab provides Rake tasks relating to project import and export. For more information, see:

Project import status

You can query an import through the Project import/export API. As described in the API documentation, the query may return an import error or exceptions.

Import large projects

If you have a larger project, consider using a Rake task, as described in our developer documentation.

Import/export tasks

The GitLab import/export version can be checked by using the following command:

# Omnibus installations
sudo gitlab-rake gitlab:import_export:version

# Installations from source
bundle exec rake gitlab:import_export:version RAILS_ENV=production

The current list of DB tables that will be exported can be listed by using the following command:

# Omnibus installations
sudo gitlab-rake gitlab:import_export:data

# Installations from source
bundle exec rake gitlab:import_export:data RAILS_ENV=production

Note the following:

  • Importing is only possible if the version of the import and export GitLab instances are compatible as described in the Version history.
  • The project import option must be enabled in application settings (/admin/application_settings/general) under Import sources, which is available under Admin Area > Settings > Visibility and access controls.
  • The exports are stored in a temporary shared directory and are deleted every 24 hours by a specific worker.