2016-09-06 59 views
0

我目前有幾個配置文件,我們稱它們爲config.php和config2.php。我有開發這個倉庫的開發人員,這些配置文件對於託管本地開發環境是必要的,所以我將它們放在了git倉庫中。一旦被拉動,我希望它們保持不變,即使通過推和拉等。Git:如何拉一次配置文件,然後保持原狀

將配置文件添加到.gitignore後,我仍然必須確保配置文件設置爲生產值,當我推,然後在我拉動時將它們重置爲本地。有沒有辦法解決這個問題?

回答

0

我看到兩個選項:

魚鉤

使用預先收到鉤下滑更改配置文件(也許除了當提交信息有一個特殊的關鍵字或線)。 在這種情況下,將配置文件添加到.gitignore是不必要的(無論如何,它是無用的 - 一旦它們的文件被跟蹤,無論它們是否在.gitignore之內都沒關係)。

如果您需要區分生產/測試版本,您只需確保測試版本未合併到生產分支(這也可以通過掛鉤實施)。

腳本

讓配置文件可以通過腳本自動生成。生成的文件被放置在.gitignore並且從未被追蹤。 這樣,本地開發者一旦打電話createConfig.sh並且可以適應他們當地的需求。 如果配置發生更改,則更新createConfig.sh - 開發人員需要在本地修改更改(通過刪除和重新創建,或者手動重新執行更改)。

在您的生產環境中,您也可以簡單地擁有本地副本。 理想情況下,createConfig.sh可生成生產就緒值,因此不需要進行許多手動更改。 (當然,總是可以添加一個--testing開關。)

0

如果您將文件添加到您的git存儲庫,那麼git會跟蹤它們。這就是它的工作原理。

用於您的具體情況的解決方案可能是包括在庫中的文件,而是包括像config.php.sampleconfig2.php.sample,然後指示你的開發人員,當第一次克隆庫,以便與本地副本適當的文件名。

相關問題