2013-08-02 45 views
0

首先,當涉及到git我有點新手。git Dev和Live網站的工作流程,推送到遠程

我有兩個網站一個用於開發另一個是活網站。我正要將所有文件移動到git上(和github),因爲我一直在使用SVN,但認爲git(在玩了幾周後)會更好地適應該項目。

我想了解的是如何讓文件上傳到遠程服務器上,以獲得最佳的工作流程。該網站的沙盒版本目前居住在本地,並且也上傳到沙盒遠程站點,任何測試都在這裏完成,一旦我們感到高興,我們將它移動到主站點。通過檢查任何改變翻到活網站文件和更新文件然後上傳。

我現在打算擁有主「主」分支並擁有一個「沙盒」分支版本。這會讓我可以選擇爲小錯誤創建新分支,在完成和測試時將它們合併到沙盒中。

在我以前的工作方式中,由於文件存儲在本地的兩個不同位置(從SVN存儲庫檢出了兩個版本),我可以跳到Coda,並在準備好時將文件ftp到服務器。

我現在猜測推送到遠程將是一個更好的選擇,因爲ftp與一個存儲庫會導致一些頭痛?

我使用的是Tower,它確實有助於我的工作流程,但一直困擾着如何在線獲取文件。任何幫助或如果我的問題沒有任何意義,請留言...

回答

0

我建議你在本地開發,推送到您的遠程(例如github),ssh到您的活服務器,然後git將更改從github到活網站。

最近我一直在使用3個步驟:

  • 開發本地的特性分支。一旦準備好併入CI分支。
  • 在CI服務器上測試。 jenkins看到了對CI分支的新提交(github post commit hook),拉下了更改並自動在測試服務器上構建它並運行我所有的單元測試。
  • 如果所有測試都通過,jenkins會生成文檔並將其提交給docs分支。將CI合併到主服務器中並推送遠程服務器的所有內容。 github認爲這個新的提交要掌握(再次提交掛鉤)並向活動服務器發出一個命令來提取新的更改。如果單元測試失敗,它將通過電子郵件發送給我並退出。

做了一些最終的現場測試和重複。

+0

感謝您的快速回復,不知道我完全理解,但會研究你的說法。謝謝 – jimbo

+0

看看:https://help.github.com/articles/post-receive-hooks和http://jenkins-ci.org希望這有助於! – xero