2013-06-27 71 views
16

我使用Git檔案歸檔子目錄的git倉庫,像這樣:混帳歸檔子目錄 -

git archive -o ../subarchive.zip HEAD subdir/* 

但是產生的存檔維護子目錄/目錄結構,即內容是:

subdir/ 
    whatever.js 
    morestuff.js 

當我真的想在存檔的根目錄下的whatever.js和morestuff.js。

怎麼辦?謝謝。

回答

25

可以是這樣做的:

git archive -o ../subarchive.zip HEAD:subdir 

順便說一句,一個簡單的方法與命令玩,看看你以這種形式使用它會產生是:

git archive --format=tar HEAD:subdir | tar t 
git archive --format=tar HEAD subdir | tar t 
# ... and so on ... 

一旦看到要查找的內容,您可以更改格式並使用-o標誌實際創建存檔。

+0

有沒有什麼辦法可以有效地進行遠程回購,例如:取得一個巨大的回購只是一個目錄/一個版本,這是不實際克隆?我嘗試過'--remote',但是速度很慢。 –

+0

它的工作原理很棒。我試圖瞭解GIT文檔的哪一部分討論了這個問題,但是不能。你可以詳細說明嗎? – Meglio

+0

@Meglio'git archive --help',讓我知道如果你找不到東西(然後請儘可能具體) – janos