2013-03-11 74 views
3

情況:CoreData:多個開發者,版本模型和保持最新

我們是多個開發人員在同一產品上工作。

我們有我們的核心數據模型1.0版本,目前在應用商店。

我工作的特點爲1.1,並要求創建數據模型的新「版本」我的名字「1.1」

我的其他開發人員正在開發的功能的應用程序,這是一個2.0一年之外。 他需要作出改變,以核心數據一樣,所以他創造基於1.0,他的名字「2.0」

我修改一些實體在1.1(比方說,我添加了一個新的「版本」兩個屬性,我的「貓」實體),我們將應用程序發送到應用程序商店。

現在他想確保1.1中所做的任何更改都被合併到他的2.0模型中。 (即他的2.0模型現在應該有更新的「貓」實體)我們如何實現這一點,而不必記下我們所做的每一項變更,並在2.0版本中手動添加/修改它們?

據我瞭解,在覈心數據創建一個新的「版本」確實的版本文件(而不是引用它,並進行更改)

感謝的「深層複製」!

+0

您是否使用任何版本控制軟件,如Git? – sosborn 2013-03-11 17:21:58

+0

@sosborn是的,我們正在使用git/github進行版本控制 – SRandazzo 2013-03-11 19:07:05

+0

您應該可以在單獨的分支上工作。有一個閱讀:http://git-scm.com/book/en/Git-Branching-Basic-Branching-and-Merging – sosborn 2013-03-11 19:14:06

回答

2

事實上,我認爲沒有絕對自動的方式來實現這一點,但是你可以做的是使用核心數據遷移工具。

例如,創建一個從2.0到1.1的映射模型會讓開發人員看到什麼發生了變化以及如何變化,因此他可以輕鬆地添加所需的更改。

事實上,你將來肯定會使用這個映射模型,以使你的新版本能夠處理來自前一個數據的數據,所以在這個方向上看看會很有用。

你可以閱讀更多關於核心數據映射here

Example from iDeveloperTV's Core Data migration