2010-05-26 49 views

回答

14

git archive創建一個tar歸檔文件,所以你不需要管道輸出tar文件,實際上它沒有達到你期望的效果。您正在創建舞臺分支的tar歸檔文件,並將其管道傳輸到一個普通的tar命令,該命令不使用其標準輸入,而是在獨立於git的工作樹中創建自己的htdocs歸檔文件。

嘗試:

git archive stage >stage.tar 

,或者對於壓縮歸檔:

git archive stage | gzip >stage.tar.gz 

如果只想歸檔的htdocs子文件夾,你可以這樣做:

git archive stage:htdocs | gzip >stage-htdocs.tar.gz 

,或者包含的文件夾存檔中的名稱:

git archive --prefix=htdocs/ stage:htdocs | gzip >stage-htdocs.tar.gz 

或者更簡單地說:

git archive stage htdocs | gzip >stage-htdocs.tar.gz 
+0

這最後一個將歸檔與'的htdocs /'提交和前綴每個路徑的根樹(例如'htdocs/rootfile.c','htdocs/sub/file.pl'和'htdocs/htdocs/htdocfile.html')。它應該指定tree-ish階段:htdocs(重新添加前綴),或者你可以使用'git archive stage htdocs'。 – 2010-05-27 05:42:30

+0

@Chris Johnsen:謝謝,這實際上是一個複製和粘貼錯誤;我的意思是它是前一個命令的變體。 – 2010-05-27 06:11:18

相關問題