我們正在嘗試使用Git/Github設置自動部署環境。我們有3種不同的環境;本地,測試和生活。當我們在本地添加新功能時,我們首先將文件上傳到測試服務器以測試新創建的功能。如果一切正常,我們將所有文件上傳到現場服務器。但是這個「上傳」過程並不是一個完美的解決方案,因爲我們有時會忘記上傳一些文件。順便說一句,我們也有iPhone和Android的移動應用程序,所以移動可能是我們的第四個環境。使用Git/Github進行部署
我們試圖做的是設置一個自動部署環境。當我們提交新功能測試服務器時,在測試這個新功能之後,我們要將它推送到活動服務器。
測試服務器上可能會有很多提交,但我們希望將特定提交推送到活動服務器。我們無法找到如何應對3-4環境而不是亂碼。我們如何將正確的代碼推送到現場服務器?我們將如何管理我們的測試和現場服務器?有沒有什麼好的資源可以告訴你如何用Git/Github建立不同的環境和部署過程?有沒有什麼文章可以告訴我們一步一步做什麼?
我讀過這些文章,但沒有一篇告訴我們如何應對本地,測試和現場環境。
- http://ryanflorence.com/simple-git-deployment/
- http://ryanflorence.com/deploying-websites-with-a-tiny-git-hook/
- http://toroid.org/ams/git-website-howto
- http://danielmiessler.com/study/git/
編輯2012-03-09:我發現http://beanstalkapp.com/和http://springloops.com,他們似乎都在部署非常好。我不確定我是否可以信任這些服務,但他們都完全按照我的意願去做。我會測試兩者並在這裏分享我的結果來通知每個人。
Git不是部署工具。有很多工具更適合這個目標。你可以做的是將這些結合在一起。 – Ikke 2012-03-08 14:51:42
我知道Git不是部署工具,但許多開發人員正在使用Git *,這是一種部署工具。我們使用Github來存儲我們的代碼,所以我們認爲使用Git/Github作爲部署工具會很好。 – 2012-03-08 14:54:55
這個問題非常適合於[服務器故障](http://serverfault.com) - 例如[this](http://serverfault.com/q/142729/105371)問題(在那裏很多類似的問題之一) )。 – 2012-03-08 14:57:09