2011-10-25 54 views
2

我的辦公室不斷擴大,並負責爲我們的Web開發構建IT。爲Web應用程序開發建立協作環境

什麼是在組設置中進行網頁開發的最佳工具/設置?這些需求是一個集中的代碼庫,用於測試開發代碼的位置,最後是將標記代碼推送到登臺服務器的方式。我想到的是svn/redmine代碼回購,每個用戶在中央開發機器上都有一個帳戶,允許ssh訪問(通過ssh進行eclipse)以及開發者服務器上的虛擬主機,這爲每個人提供了一個集中的開發沙箱。代碼在這個開發箱上編寫和測試,然後再檢查回svn,然後標記並推送到登臺服務器。是嗎?想法評論或建議?

*另外,在開發環境中,處理數據庫的最佳方式是什麼?從生產數據庫中取出是否明智?也應該每個開發人員有他/她自己的數據庫或工作一個主數據庫?

**我們正在構建一個magento應用程序,並且還有一些在cakePHP上運行的自定義backoffice工具。

+0

如果你還有興趣,這是我寫的類似於你所提到的關於數據庫同步的一個答案 - http://stackoverflow.com/questions/9005406/how-對安全部署階段數據庫的生存,生產數據庫中,Magento的/ 9013523#9013523 –

回答

2

雖然這個問題是在StackOverflow上偏離主題和標記,那麼你需要專注於以下幾個方面:

版本控制

  • GIT擁有所有的榮耀,你並不需要你作爲https://bitbucket.org/提供無限的數據和私人/公共回購,你可以在那裏設置你的代碼庫。 http://github.com也是功能強大,事實上最受歡迎的版本控制導向的工具,雖然它有一個小的價格
  • 因此您的主分支生活在您的版本控制中,您的開發人員將檢查frpom並承諾它
  • 部署工具會從你的主數據部署到你的生活和分期環境

ENVIRONMENTS

  • 通常三個LIVE使用階段,DEV
  • LIVE是很好的生活和唯一批准代碼被部署在那裏
  • 階段是預現場環境,並應根據活得那麼所有的事情可以有由商戶進行測試
  • DEV是很酷的翻版翻版環境,可也有開發商局部ENV是彪鬆散的測試和試驗

數據庫和部署

  • MySQL數據庫是疼痛的屁股這麼同步你最好有一個腳本,它的同步操作從生活到ot她和防止從其他環境同步到現場。此限制還要求所有配置和內容將僅從LIVE添加,然後才能同步到該行。模式或永久設置的每一個變化都應該由更新腳本來處理(正如我們所說的MAGENTO CE,MAGENTO EE已經內置了遷移)
  • 用於部署我還建議您構建一個結構或capistrano腳本來重置dev和臨時環境,處理數據庫重置並從LIVE DB中拉出,並從中央存儲庫導入代碼。

它也是針對以下日常任務,是一個好主意:

  • 客戶需要爲它的測試
  • 項目經理,開發人員或測試人員需要測試,以便產卵測試克隆重置階段應該是oneclick動作(取當前數據庫和代碼,並使其只存在於特定測試的子文件夾中)以及刪除測試。第三方開發人員可能需要訪問特定的測試或開發環境(這實際上與magento一樣爲平均至少有10個外部ex緊張關係安裝在每個magento商店裏)
相關問題