簡體   English   中英

Web開發; 沒有服務器源控制支持

[英]Web development; no server source control support

我正在使用CodeIgniter PHP框架開發Web應用程序。 我正在使用的服務器不支持任何類型的源代碼控制(即Subversion),除非你去更高的價格層。

我仍然希望將代碼置於某種源代碼控制之下。 執行以下操作是否有意義:

  1. 在我的本地機器上安裝git或SVN並在那里開發
  2. 將更改從本地計算機復制到服務器上的開發目錄(使用FileZilla,WinSCP等)並進行測試
  3. 將更改從開發目錄復制到服務器上的生產目錄

這聽起來合理嗎? 還有更好的選擇嗎? 謝謝!

如果你在本地使用svn它有點危險,因為那時你還需要保護你的計算機 - 我認為最好的方法是使用商業網站提供完全支持的svn / git - 比如http://www.beanstalkapp.com /http://www.github.com

您可以在本地計算機(SVN,Git等)上使用源代碼控制,並使用Capistrano等開源工具通過SSH將代碼從本地源代碼控制存儲庫部署到服務器。 或者,如果您僅限於FTP,此博客文章有一個潛在的解決方案。

使用像Capistrano這樣的工具而不是通過FileZilla或WinSCP直接將本地計算機上的文件鏡像到服務器的優點是Capistrano將對已部署的文件進行版本化,這樣,如果您最終破壞某些內容並需要快速回滾到以前部署的版本,可以像將符號鏈接更改為以前的部署目錄一樣簡單。

這聽起來合理嗎?

部分地,在第1頁。 但即使在這種情況下,我也建議你的存儲庫也在一些Repository-Hosting(BitBucket,GitHub,Assembla)

對於第2-3頁:您的部署必須是自動且非交互式的 - 因此 - 您必須選擇其他工具(用於在SCM-of-choice的post-commit鈎子中使用)

以某種方式更好的替代2-3可能是:

  • 使用2個不同的分支(DEVEL和PROD)作為DEVEL和PROD目錄的源
  • 提交后掛鈎,上傳僅在已提交的修訂文件中更改為相應的目錄(用於FTP的NCFTP,用於ssh的方案的SCP)
  • 主要開發發生在DEVEL分支
  • PROD 只有DEVEL的合並集

工作流與SCM無關,可擴展到任何合理數量的分支機構和開發人員

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM