在Git Bash中,我尝试使用此命令:
$ git archive -o test.tar.gz master
gzip: compressed data not written to a terminal. Use -f to force compression.
For help, type: gzip -h
文件test.tar.gz
为空,但我的存储库不为空,创建一个zip文件工作正常(包含我的所有源文件)!为什么tarball格式无法生成存档?
答案 0 :(得分:5)
这似乎是git archive
想要将内容从tar
传递到gzip
的方式与Windows处理管道的方式之间的兼容性问题。您可以通过手动将tar
汇总到gzip
来生成相同的错误消息:
$ tar -c file.txt | gzip
gzip: compressed data not written to a terminal. Use -f to force compression.
For help, type: gzip -h
这两个命令在Windows 7上适用于我,并且应该在功能上与您尝试的相同:
$ git archive -o test.tar master
$ gzip test.tar
答案 1 :(得分:3)
将它传递给gzip:
git archive master | gzip > test.tar.gz
答案 2 :(得分:1)
即使您没有使用Git Bash,也可以从常规的命令提示符开始:
git archive --format=tar.gz master > test.tar.gz