2015-06-15 81 views
1

項目XML文件(* .sqlproj)存在問題。如果文件被添加/ renoved /更改的位置,然後它會自動添加/刪除一些意想不到的地方的記錄。之後,當有人更改該文件時,我們還會遇到很大的麻煩。使用版本控制(* .sqlproj)正確管理SSDT項目文件

我們得出結論,我們可能會在簽入前對其進行分類。我們會按字母順序排序,在這種情況下,合併工具會更好地理解它。

所以,我的問題是:

  1. 是否有可能以某種方式之前重新安排sqlproj文件每次籤嗎?也許有一些選項/工具已經這樣做了?
  2. 還有其他方法可以讓開發人員的生活變得更輕鬆嗎?

UPDATE:

再一次我得到了同樣的問題。 sqlproj文件被修改了3次,我想合併到生產只有最後一次更改,其他2沒有測試過。在合併工具中,我可以選擇添加所有這3個新對象,或保留它不作任何更改。我不能只選擇最後一個變化...

例:

  1. Developer的創建TABLEA和檢查;
  2. developerB得到最新版本的dev分支,創建tableB並簽入;
  3. developerC獲得了最新版本的dev分支,創建了tableC並簽入了。DeveloperC測試了代碼並準備好投入生產。他試圖將自己的代碼合併到QA中,並得到衝突,他有一個選項只能用於所有更改。

回答

0

1 - 您使用的是什麼源代碼控制?沒有我知道的源代碼管理了解sqlproj文件的上下文,但這通常不是問題。

2.a - 這不應該是你經常遇到的問題,你是否經常檢查/檢查?我只希望看到問題,如果不同的開發人員正在對項目進行大規模更改,而不是在前後檢查/檢查。

2.B - 也有可能你沒有正確的合併,如果你把兩個了全部的修改則通常是罰款。

ed

+0

1)TFS; 2a)持續地,或多或少地檢查(不是大的變化); 2b)試圖合併只有我的變化 –

+0

你如何解決衝突?包括衝突雙方的變化?(衝突窗口,左側和右側的勾號) - 我做了很多事情,從來沒有任何問題將事情放在錯誤的地方 –

+0

問題發生在我們正在處理幾個的問題。假設我已經添加了該對象,但尚未完成。之後,我切換到另一個任務,並添加了1個文件。完成任務#2並希望上線,但在proj文件中,我仍然有第一個任務的條目。這是一個小例子,但當合並這個文件時我們遇到了很多問題:( –

1

我明白你遇到的情況非常好。當您在單個存儲庫的上下文中發生多個工作流時,通常會發生這種情況,並且您沒有共同的促銷時間表(因爲所有工作將同時進入QA,同時進行PROD)。

有幾個方法我能想到去解決這個問題,有優點和缺點,每個選項。

  1. 鎖定每個環境,直到一切都可以一起促進。在大多數情況下不現實。

  2. 當您準備宣傳時,從源環境中創建一個促銷分支,並將尚未準備好推廣到目標環境的促銷分支拿出來。這使開發人員能夠繼續工作,並能夠在不結冰的情況下進行推廣。

  3. 混合的方法...不要在Dev中收集控制任何東西,直到它準備升級到測試。然後從那裏做選項#1或2。

  4. 創建一個更靈活的生態系統,可以以演示與他人/測試旋轉起來的環境中,每個功能分支(或至少分配開發者之間的/旋轉足以實現相同的目標)。一旦被接受推廣。這是我們目前正在努力實現的目標,但是當您擁有大量相互關聯的數據庫和共享這些數據庫的應用程序時(尤其是在Microsoft世界中),要構建基礎架構和流程至少有點難度。

不管怎麼說希望這有助於...

相關問題