2014-09-30 40 views
1

我使用了Subversion多年。它允許你做一些非常酷:解決Git的目錄限制?

svn checkout http://bla.bla/some/relative/path 

使用Git,你只能:

svn checkout http://bla.bla <-- I.e. you can't checkout sub directories 

人們如何解決此得到什麼?我的問題特別是部署腳本。我有這個目錄結構:

/db 
/www 
etc 
etc etc 

所以,我需要檢查「www」/ home/mysite/public_html。但要做到這一點,我將不得不具有完全相同的結構(即將www更改爲public_html),並且我將增加檢查db和其他所有文件到我的主文件夾的問題。

我不想檢查到一個隨機文件夾,然後必須複製它,或rsynch它,或做任何其他愚蠢的不必要的步驟。

那麼,別人怎麼解決這個問題呢?

UPDATE

這是非常重要的是,代碼展開後,我可以簡單地去到服務器,並從www目錄內鍵入「混帳拉」,讓所有的最新文件。

回答

1

首先,你可以限制一個Git回購以一套連貫的文件(在您的www意味着在一個回購協議,在另一個DB)

第二,如果你把一切都在一個回購協議,你可以看到一個sparse checkout可以提供幫助。

+0

兩個回購是有點矯枉過正只是有這個功能。我假設你參考這個:http://jasonkarns.com/blog/subdirectory-checkouts-with-git-sparse-checkout/當你說稀疏結帳? – coderama 2014-09-30 11:06:21

+1

@coderama這不是一個「功能」。這是該工具(git)的分散性的直接後果:您克隆了一個回購的完整歷史記錄。重要的是要保持回購內容的嚴密性,並且不要將回購視爲可以拋出所有內容的巨大基礎。如果您需要一起跟蹤它們,您可以將主回購庫中的回購作爲子模塊進行分組。 – VonC 2014-09-30 11:08:04