2014-02-21 36 views
0

我在Git倉庫中有一個Vagrant項目,但是需要不同的Vagrant文​​件用於各種機器。我想知道是否有辦法在Git中管理Vagrant文​​件,而不必在git之外對.gitignore文件進行管理。Git和不同的流浪文件

+0

那麼,Vagrantfile只是Ruby對不對?所以你不能只是寫一些代碼來改變配置取決於平臺? – Ajedi32

回答

1

將Vagrantfile放在源代碼管理中通常是一個好主意,因爲它通常是開發和/或測試環境的一部分。

聽起來像你的問題是,每臺機器需要對Vagrantfile進行一些自定義以使其適合其環境。這是一個常見問題 - 在源代碼管理中管理配置文件。有兩種主要方法:

  • 對於具有一小組離散配置(例如,每個平臺)的事物,可以將該邏輯直接放入Vagrantfile中。畢竟,Vagrantfiles在一天結束時只是Ruby代碼 - 隨意將一些配置邏輯放入其中。
  • 對於每個用戶獨有的事情,最好通過(例如)Vagrantfile可通過ENV讀取的環境變量來從環境中獲取這些內容。這樣,您可以提交Vagrantfile並只需要最終用戶配置其環境。
+0

並且主機通用配置可以放入〜/ .vagrant.d/Vagrantfile。基盒也可以包含流浪文件。全部合併。請參閱[文檔](http://docs.vagrantup.com/v2/vagrantfile)以獲取更多信息。 – tmatilai

0

我將有不同的流浪文件,其機器名稱附加到文件名。如:Vagrant.stagingVagrant.development,Vagrant.production等等。當你去部署時,只需將相關的符號鏈接到Vagrant。