我正在尝试解压缩git对象,但问题是它正在.git目录中解压缩。我需要将它解压缩到stdout中,以便我可以进一步处理它。
cat test_pack_no_header | git unpack-objects --stdout
我明白了:
usage: git unpack-objects [-n] [-q] [-r] [--strict]
也许我不明白这应该如何起作用,但从文档到我看起来似乎是 - 一个选项(除了-n -q -r之外还有很多其他的)
--stdout Write the pack contents (what would have been written to .pack
file) out to the standard output.
完全使用:
git pack-objects [-q | --progress | --all-progress] [--all-progress-implied]
[--no-reuse-delta] [--delta-base-offset] [--non-empty]
[--local] [--incremental] [--window=<n>] [--depth=<n>]
[--revs [--unpacked | --all]] [--stdout | base-name]
[--keep-true-parents] < object-list
答案 0 :(得分:0)
git pack-objects
写入stdout并从repo中读取对象。
git unpack-objects
从stdin读取并将对象写入repo。
这允许从回购转移它们的对象并将它们解压缩到另一个回购。
只需解压缩到一个空的仓库并在那里处理生成的对象。