2011-10-18 94 views
3

我們正在與另一家諮詢公司共同開展一個項目。大多數情況下,我們每個人都有自己的領域,但有一點交叉。合併2個CRM 2011非託管解決方案

假設我們都修改具有衝突變化的實體。使用「最後一個獲勝」規則,最後導入的任何解決方案都將實施其更改。

有沒有一種工具或一些已知的方法來識別這些衝突之前導入完成,以幫助我們管理這個問題?

+0

您可能會在這裏找到答案(http://blogs.msdn.com/b/devkeydet/archive/2012/01/03/merging-crm-2011-solutions.aspx)。解釋了「每個開發者一個組織」的方法。 – Roman

回答

2

我已經遇到了這麼多次,我的方法是導出自定義項並使用代碼比較工具(如WinDiff或BeyondCompare)檢查自定義文件(xml文件)的內容。

+1

WinDiff&BeyondCompare並不理想,特別是如果您使用語言包,因爲它們無法識別xml元素中的有效重新排序。關鍵的前提是使用Solution Packager將解決方案分解爲可管理的XML塊: https://msdn.microsoft.com/en-us/library/JJ602987.aspx http://waelhamze.com/ 2014/01/12/dynamics-crm-parallel-development-with-solution-packager/ –

1

這並非嚴格意義上的「最後一個贏」場景,有一個允許某種共存的模式,例如,如果您同時添加字段到同一個表單。

需要牢記的一點是,您應該在鏈接到獨特發佈服務器的非託管解決方案中執行所有自定義設置,並且該發佈服務器應該有唯一的前綴,因此您可以使用John_作爲所有新實體的前綴,領域等,另一家公司可能會使用Acme_或任何適合他們的東西。

這有助於減少直接衝突,如既增加一個字段名稱相同,但不同類型的(他們不會有相同的架構名稱,因爲不同的prefices的)

+0

永遠不要在同一個組織中共同開發2個非託管解決方案,否則你會在解決方案之間不經意間產生交叉依賴關係。有時甚至使整個解決方案無法部署。 –

0

保持你的表單組件在不同的標籤和章節,如果你們都使用託管解決方案,表格定製將被合併。同樣的網站地圖&功能區定製可以獨立開發,如果您將更改分組在一起,您可以讓CRM爲您合併解決方案。

不要將其他諮詢公司的主要定製解決方案導入到您的開發環境中,以避免在它們之間創建相互依賴關係,但是您可能會引用相同的實體。如果兩家諮詢公司所需要的實體都是定製的,那麼您需要就預先包含在「核心」解決方案中的內容達成一致;開發,共享並安裝在所有開發環境中作爲先決條件。

根據項目的複雜程度,您可能會發現託管一個共享解決方案的IFD臨時環境,這兩家公司都可以用來解決衝突並作爲有用的測試環境。

同意前期如何投訴& UAT問題應該報告,調查&解決並明確界定工作分工。

相關問題