2009-06-01 113 views
9

我想在一個git存儲庫中合併兩個或多個目錄。這些存儲庫在邏輯上是鏈接的,但屬於不同的文件系統路徑,例如/etc/httpd/var/named/chroot/var/named都包含我想作爲一個整體管理的虛擬主機數據,但我無法鏈接它們。我有asked the git mailing list但沒有運氣。在一個git存儲庫中維護不相關的目錄

對此提出建議?


更新:我不使用這個機制部署代碼,我只是覺得這是一個非常方便的方法:

  • 跟蹤變化,因爲它們發生,讓我可以很容易git checkout以前已知的穩定點和事件git bisect的配置問題。
  • 在單獨的目錄中暫存更改,然後在需要執行更改時從該目錄中提取更改。
+0

嗨羅伯特,你有沒有找到任何方式來獲得兩個不相關的目錄到一個單一的GIT存儲庫?我認爲符號鏈接會很好,但在OSX上GIT不尊重它們。 – 2010-01-03 13:34:25

+0

到目前爲止,沒有。 – 2010-01-03 13:48:40

+0

好的,謝謝你。 +1的問題的方式... – 2010-01-04 16:26:01

回答

2

要做到這一點,最好的方法是編寫一個部署文件的腳本,並使用Gi​​t來管理項目的源代碼。如果你有更復雜的需求,那麼像Puppet這樣的管理工具就可以集成版本控制。

直接Git簽出不是一種很好的部署方式 - 它不是爲此而設計的。您可以避免使用導出工具在目標系統上存儲存儲庫的問題,但通過設計,Git不會爲文件存儲完整的權限/ ACL數據。

2

也許你可以建立一個Git倉庫,並有多個不相交的分支,一個用於你想跟蹤的每個不同的目錄樹。我不確定這種安排是否能夠滿足您的所有要求,但它可以讓您將不同的目錄保存在同一個存儲庫中。

相關問題