LoginSignup
13
16

More than 5 years have passed since last update.

GitLabからGitLabへのプロジェクトexport/import時にハマった話

Last updated at Posted at 2018-05-15

はじめに

システム保守移管で元々使っていたGitLabから別のGitLabへプロジェクトをそっくりそのまま移動したくなった。
GitLabバージョン8.9から実装された、プロジェクトのexport/import機能を使ってやろうとするといくつかハマりポイントがあったのでまとめる。
※ 記事記載時の最新の

その1「GitLabバージョンの差異」

GitLabにはバージョンとは別にexport/importバージョンがあり、export/importバージョンが違うGitLabの移管はできない。
(後方互換性があるかは不明)
もし移管先のexport/importバージョンが古い場合はGitLabのバージョンアップが必要

GitLabバージョンとexport/importバージョンの対応

その2「binaryファイルのマージリクエストがあると、importできない」

importしたいプロジェクトのマージリクエストにbinaryファイルのマージリクエストがあると、下記エラーとなる。
Error importing repository into hogehoge - invalid base64
対処法は、exportで作成されたtar.gzのアーカイブを解凍して、中にあるproject.jsonを変更する必要がある。

package.json
"merge_requests": [
    "merge_request_diff": [
        "merge_request_diff_files": [
        ...,
        {
            "binary":"true"
        },
        ...
        ]
    ]
]

"binary":"true"となっているmerge_request_diff_filesをごっそり削除。

参考

その3「文字化けしてるファイルがあるとimportできない」

windows備え付けの解凍/圧縮ツールで、exportされたアーカイブをそのまま解凍すると、日本語名のファイルのファイル名が文字化けすることがある。
そのままimportしようとするとファイル名が長すぎるためimportできないエラーとなる。7-zipを使うか、windowsアップデートにて文字化けを回避する必要がある。

参考

その他

GitLabサーバのメモリが少ないとexportできない

13
16
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
13
16