I need to import my issues between GitLab instances

I created a new instance of a GitLab CE host on a new VM. I executed clone --mirror and push --mirror to get my files, branches, tags, and commits into the new instance. What’s missing are the issues, milestones, boards, labels, and merge requests. What must I do to migrate those objects into the new instance. Or what should I have done differently to capture everything at onetime and migrate?

I executed the Settings: Export project step which generated a compress archive [2018-07-10_17-22-493_old-project_export.tar.gz] file but, I can’t find any information on how to import the file.


Check these links, shows how to make a full or specific backup to restore it.



Update: I found the tab to execute the project import. The location of the tab nested down in the “New Projects” button wasn’t very straight forward though. But I found it. The import works as the documentation states. The running versions of GitLab have to be the same for the import operation to work. That being said, I still see problems as listed below. So I guess the GitLab export/import is a work in progress?

Import by HTTP

  • The repository statistics didn’t match.
  • None of the issues and board data was imported
  • The branch protection setting were not set properly
  • None of the merge request were imported
  • None of the CI /CD data was imported

Import by Gzip file

  • The project was import into the wrong group
  • The issues were imported but the issue count displayed in the left frame was incorrect
  • Not all labels were imported
  • The group milestone was imported as a repository level milestone
  • Merge request were imported but ownership of the request was changed
  • The pipeline data that references commits and merge request did not match between instances

This works for the entire system, yes. However, I just want to specifically export and import certain projects.

You could import all and delete the unwanted repositories, if these are not to many…

The heavy way: You can use the GitLab API to read on GitLab instance and write to the other GitLab instance. There is e.g. https://github.com/python-gitlab/python-gitlab as a nice API abstraction.

check this link https://docs.gitlab.com/ee/user/project/settings/import_export.html