2 つの別々のブランチで 2 つの新しいモデル バージョンを取得する Core Data モデルがあります。
2 つのブランチのマージは適切に機能しますか (
xcdatamodel
XML ファイルのようです)? つまり、2 つの新しいバージョンが作成されるのでしょうか。マージ後のバージョン管理について: 両方のバージョンからの変更を含む新しいモデル バージョンを作成するにはどうすればよいですか?
Core Data Models のマージは非常に苦痛であることがわかり、何としてでも避けることにしました。
バージョン化されたデータ モデルは、実際には各バージョンのモデル ファイルを含むディレクトリです。自動軽量バージョンの場合、Core Data はすべてのバージョン ファイルを順番に処理する必要があるため、現在のバージョンの中でベース バージョンに関するある種のハッシュ文字列を保持します。これは基本的に、2 人の異なる開発者が同じベース バージョンから新しいバージョンを開始した場合、それらをマージしようとすると失敗することを意味します。クリーンなデバイスで動作するようになることもありますが、以前のバージョンからデータを移行する場合は失敗する可能性があります。