4

我剛剛在SO上閱讀了以下文章;版本控制下的數據庫(Sitecore)

Do you source control your databases

我們與Sitecore的工作,通常附着的3個標準數據庫,我們的MSSQL服務器。 我們有一個核心,主和Web數據庫。在開發Sitecore後端不同模板的過程中,我們都使用一個數據庫,並使用Sitecore CMS發佈我們的數據庫更改。例如,當我創建一個數據模板時,當他刷新其「內容樹」時,我的同事將看到相同的數據模板。從我讀過的鏈接上面的數據庫源代碼控制的內容中看到,當你有不同數據庫的源代碼的多個版本。是否需要將我們的數據庫置於源代碼控制之下?考慮到這一點,知道Sitecore實際上是處理向不同數據庫發佈項目等,我們都通過Sitecore CMS工作在同一個數據庫上,我認爲這不是必需的。我很好奇,是否仍然有將數據庫置於版本控制之下的優勢。

回答

5

Sitecore 6引入了非常酷的功能項目序列化。無需將您的整個數據庫文件保存在源代碼管理下。您只能存儲必要項目的序列化版本。這些是文件系統上的簡單文本文件。

查看this blog post from Alex瞭解更多詳情。

+0

聽說過它,看過它,沒有想過它這樣。非常感謝 ;) – Younes 2010-09-10 13:02:51

2

您鏈接到的帖子以及後續帖子更適合「擁有」數據庫的自定義應用程序。即你已經創建了表,存儲過程,視圖等......我同意,如果你確實創建了一個數據庫,那麼你的模式需要在你的源代碼管理中。但是,對於Sitecore網站,您並不擁有Sitecore數據庫架構,因此您不必在源代碼管理中擁有它。 (我希望Sitecore具有源代碼管理模式,儘管; p)

所以,你不擁有實際的數據庫模式,不應該在源代碼控制中,但模板和其他項目呢? ,您是否爲您的Sitecore網站創建?

對於解決方案中的Sitecore項目,您需要清楚地瞭解它們的所有權。 Sitecore附帶的商品和模板不屬於您,因此您不應在源代碼管理系統中對其進行管理。然而,你和你的團隊創建的模板應該在源代碼控制中!

爲了讓特定的Sitecore項目進入源代碼控制,您可以使用Sitecore的內置序列化功能,如Yan提到的。您還可以使用像Team Development for Sitecore這樣的工具來自動執行此過程,並幫助在環境之間自動構建和部署項目。