【发布时间】:2012-07-24 07:22:16
【问题描述】:
我目前正在使用以下方式导出 git 存储库:
git checkout-index -f --prefix=$TARGET_PATH/ $GIT_REPO_PATH/*
实际行为:导出发生在添加到索引中的所有文件上。
期望的行为:导出所有不仅添加,而且还提交的文件。
我尝试使用--stage-option,但已提交和未提交文件的阶段为0(我不得不说,我还没有理解阶段号。
有什么想法吗?
【问题讨论】:
-
因为它会创建一个存档(显然是 ;)),而我只需要一个普通的导出。
-
那么,
git archive HEAD | tar x -C"$TARGET_PATH"有什么问题? -
嗯,这会压缩然后解压缩存储库文件。实际上它可以工作,但它需要时间并产生负载。没有通用的方法,怎么做?
-
tar(没有-j或-z选项)不压缩。复制也需要时间,我怀疑使用 tar 时会有明显的开销。 -
确实如此。但是在两者之间使用 tar 对我来说似乎毫无意义。不过好吧,如果没有直接的办法,我显然不得不应付。我将不得不检查是否有明显的开销。
标签: git