2011-09-14 29 views
3

我目前正在開發一個PHP站點,並且在本地(開發)和生產站點上使用Git(我的web服務器上的一個回購站使用post-recieve鉤子部署到Web根目錄),其中的細節在toroid.org's 'Using Git to manage a web site' article.'使用Git去同步'一個PHP配置文件

問題概括是,我也有一個config.php文件(各種),我使用的連接到我的本地開發環境之間不同的數據庫(帶有測試數據的MySQL本地安裝)以及我的遠程「生產」Web服務器(擁有它自己的「實時」數據庫)。每當我將更改推送到網站上,配置文件就會隨之更新,並用連接到(不存在的)開發工具的設置替換我的'live'配置!然後,我必須手動SSH到我的網絡服務器並替換config.php文件,這種方式擊敗了目的!

有沒有什麼辦法可以讓Git ...類似'desynchronize'的config.php文件? 'development'config.php永遠不會被保存到git repo中,當生產服務器將PHP腳本等部署到web根目錄時,它也應該保持現有的'production'config.php文件不變。

有沒有辦法用Git做到這一點?非常感謝您的建議!

TC

回答

6

首先我會從資源庫中刪除config.php文件,然後我會創造 一個名爲「的.gitignore」的文件,並添加文件名‘的config.php’來了。

+3

我建議至少添加'config.php.example',最常用的設置預設爲 – zerkms

+0

啊,太棒了。最初沒有爲我工作,但事實證明這是一個無關緊要的問題。直到我明白這一切還有很長的路要走,但非常感謝你的幫助! –