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

2.3 KiB

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

Project import/export administration (FREE SELF)

  • 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 to export 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:

    1. On the top bar, select Menu > {admin} Admin.
    2. On the left sidebar, select Settings > General.
    3. Expand Visibility and access controls.
    4. Under Import sources, check the "Project export enabled" option.
    5. Select Save changes.
  • The exports are stored in a temporary directory and are deleted every 24 hours by a specific worker.