2012-07-16 65 views
0

我知道這已經被問到,但我想分享我的情況也專注於替代解決方案和技巧。我們開發PHP網站,並在遠程半製作服務器上測試所有內容,以瞭解我們的Web應用程序在真實世界中的工作方式。使GIT自動提交每個文件更改

通常情況下,我們在我們的計算機上安裝遠程SFTP,並直接在服務器上讀寫(然後我們每晚都從測試​​服務器備份到另一臺),所以我們不必保存並上傳每個文件我們改變。

現在我們正在考慮切換到GitHub來跟蹤文件更改。我已經在我的Mac上安裝並配置了GitHub,並且自動從我們的GIT存儲庫中拉出了測試web服務器的webhook。所以,當我提交併同步到GitHub時,我可以刷新我在瀏覽器中更改的頁面,以查看它的實際運行情況。

問題是,網頁腳本通常是由許多微小的變化組成的,有時你必須連續點擊「保存」並切換到瀏覽器以檢查它是否正常工作......所以必須提交(並指定一個總結!)每次都是不可接受的。

我們如何才能解決這個問題的工作流程?

預先感謝您。

+2

爲什麼不繼續使用SFTP和GIT?他們不是相互排斥的 – zerkms 2012-07-16 11:03:21

+1

你當然也在本地發展?讓您的更改保存,在本地測試,在一天結束時提交修改後的文件!那裏沒有問題。 – Dale 2012-07-16 11:03:42

+0

@Dale您應該提交相關更改的塊,並且如果您每天提交的次數極少,那麼您將擁有超級提交,無法跟蹤任何難以合併或回滾的更改。 _但也許你的意思是**推**每天一次?_ – c69 2012-07-16 11:08:28

回答

3

簡而言之:你不應該那樣做。

源代碼管理系統不用於測試並將開發中的代碼轉移到測試服務器。您應該像以前一樣使用SFTP或設置rsync。這些是轉移的工具。

你應該使用GitHub來存儲工作,完整的變化。在測試完「微更改」並獲得工作快照後,您應該提交併描述自上次提交以來修改的所有內容。

其他任何東西都只是黑客您嘗試使用的工具。做你的建議只會意味着失去(幾乎)git給你的所有好處,並且比使用普通的sftp/rsync更不方便。

4

只提交好的代碼。如果需要,可以用sftp進行測試,但只提交好的代碼。

失去像git bisect這樣的好處是你在其他人中提出的一個非常嚴重的副作用。

相關問題