2014-07-09 62 views
0

我有一個應用程序(App1)完成。我們使用相同的應用程序來啓動完全不同的服務(AppX)。但是,我希望App1中的所有錯誤修復都能在AppX中更新(AppX將在github上遵循App1)。Git:分支iOS應用程序使用故事板但如何防止衝突?

問題是iOS應用程序的大部分都是在Storyboard中完成的(對於那些非iOS人員,當你有衝突時,故事板在github上的屁股疼痛,因爲它們有點像所見即所得的編輯器)。所以我需要對AppX的故事板做出很多改變,使它看起來像一個完全不同的應用程序。但是,當我更新App1故事板時,我不希望它更新AppX故事板或衝突。

我的問題是A)處理這個問題的最好方法是什麼。 B)我想在AppX中創建一個新的故事板,在開始時是App1的故事板的重複,然後修改它,這將防止任何衝突。 C)這是最好的方式還是有更好的方法? D)如何做第二個故事板的任何好例子?

TIA

回答

1

這是一個艱難的。在製作過程中管理起來比在現實中更容易管理。我推薦的是試圖將故事板從App1合併到AppX。是的,會有衝突。如果您以故事板的形式來管理故事板,以至於沒有一件是XML的巨大混亂,那麼通過故事板的源代碼並排除衝突可能不會是一場噩夢。另一方面,如果您只是完全避免碰撞,那麼請確保這兩個應用程序中的故事板具有不同的名稱。

我可能會誤解你的問題,所以請隨時澄清。

編輯:對於低於約拖拉機和寵物您的評論,有arethings你可以這樣做:

1)創建單獨的分支。每個項目的故事板將分佈在不同的分支上,只要你不合並它們,你就不會有衝突。但我不推薦這樣做,因爲保持其他源文件的一致性會更困難。

2)在您的XCode項目中創建另一個目標。關於這個話題已經有很多問題和答案了。但是你可以有兩個目標,每個目標都有它自己的故事板,同時共享相同的源代碼。這將更容易管理,而不是試圖跟蹤兩個不同分支的兩個獨立應用程序。

+0

你說得對。你知道如何改變故事板應用程序的範圍嗎?我假設它在AppDelegate中完成?或者我必須告訴每個視圖控制器使用AppZ故事板。有沒有辦法只是在AppDelegate中說...嘿,只是使用AppZ故事板應用程序廣泛? – jdog

+0

你的意思是你在這個項目中有多個故事板,但你只是想將其中的一個用於AppX? – joelg

+0

不,我有工作的iOS。我現在需要創建一個新的分支版本的這個應用程序(第一個應用程序是賣拖拉機,這個新的應用程序是賣寵物)。現在我想從拖拉機的所有錯誤修復也被固定在寵物應用程序。但寵物應用UI/Storyboard需要不同(僅限於顏色和文字)。當我在拖拉機上進行UI/Storyboard更改時,我不希望他們更新Pets故事板。 – jdog