LFS 移行

このページの内容

お困りですか?

アトラシアン コミュニティをご利用ください。

コミュニティに質問

Git LFS のデータおよびオブジェクトは、Data Center Migration ツールの使用では移行されないため、クローンや手動での再プッシュが必要となります。

[LFS 対応] はリポジトリ単位の設定です。つまり、インポート後にソース側のリポジトリで有効化すると、ターゲット側のリポジトリで [LFS 対応] が有効化されます。

始める前に

LFS の移行プロセスでは、影響を受けるすべてのリポジトリに対するソース インスタンスでの読み取りアクセスと、同じリポジトリに対するターゲット インスタンス上での書き込みアクセスが必要です。 

エクスポートの準備

Data Center Management を使用して生成されるエクスポート出力は LFS オブジェクトを含みません。

このプロセスは LFS オブジェクトについてのみ必要です。

クローンは、エクスポートの前後、またはエクスポートの実行中に作成できます。エクスポート後にソースを破棄する場合、エクスポート アーカイブに LFS オブジェクトは含まれません。LFS オブジェクトはソースまたは別に作成したクローンにのみ存在します。

LFS オブジェクトの移行の準備では、クライアントに Git LFS がインストールされている必要があります。不明点がある場合、「Git Large File Storage」でプロセスについてご確認ください。


1. 移行する LFS オブジェクトを含んむ対象リポジトリのクローンを作成します。

  • Git LFS が有効化された各リポジトリについて、移行のソース インスタンスとターゲット インスタンスの両方にアクセスできるマシンにクローンが作成される必要があります。
  • それ以外の場合、まずソース インスタンスからクローンを作成し、そのクローンをあとから転送します。
  • 使用可能な開発ワークフローの一部として既存のクローンが存在する場合があります。既存のクローンを使用できない、または使用したくない場合、移行プロセス専用のクローンを作成することをおすすめします。


To migrate the full history of LFS objects, you need full clones: use  git clone $source_repo_url for each LFS-enabled repository.

If a recent history will be sufficient, you can use a shallow clone:  git clone $source_repo_url --depth 1 or similar, for each LFS-enabled repository.


2. Run git lfs fetch --all on each individual clone to retrieve the LFS objects.

LFS オブジェクト / データのエクスポート

必要に応じて、完全なエクスポート プロセスをここで確認できます。


1. 既存のデータ センター移行プロセスを使用して対象のリポジトリをエクスポートします。

2. 上記で説明したように、LFS オブジェクトを含むそれぞれのクローンを個別に維持します。

LFS オブジェクト / データのインポート

オブジェクトではなく LFC を有効化する設定のみがリストアされるため、エクスポート前に個別のクローンが作成されます。   


1. 既存のデータ センター インポート プロセスを使用して対象のリポジトリをインポートします。

これらのリポジトリではエクスポートされた時点で LFS が有効化されています。

2. Once the import is completed, add the new origin to each of your clones: git remote add $target_instance_name $target_repo_url

3. To complete the process, push LFS objects: git lfs push --all $target_instance_name

最終更新日 2019 年 1 月 16 日

この内容はお役に立ちましたか?

はい
いいえ
この記事についてのフィードバックを送信する
Powered by Confluence and Scroll Viewport.