When creating .tar.gz archives with git archive, we let gzip handle the compression part. But that is not even necessary, as we already require zlib (to compress our loose objects). It is also unfortunate, as it requires gzip to be in the PATH (which is not the case e.g. with MinGit for Windows, which tries to bundle just the bare minimum of files to make Git work non-interactively, for use with 3rd-party applications requiring Git). This patch series resolves this conundrum by teaching git archive the trick to gzip-compress in-process. Rohit Ashiwal (2): archive: replace write_or_die() calls with write_block_or_die() archive: avoid spawning `gzip` archive-tar.c | 54 ++++++++++++++++++++++++++++++++++++++------------- 1 file changed, 41 insertions(+), 13 deletions(-) base-commit: 8104ec994ea3849a968b4667d072fedd1e688642 Published-As: https://github.com/gitgitgadget/git/releases/tag/pr-145%2Fdscho%2Fdont-spawn-gzip-in-archive-v1 Fetch-It-Via: git fetch https://github.com/gitgitgadget/git pr-145/dscho/dont-spawn-gzip-in-archive-v1 Pull-Request: https://github.com/gitgitgadget/git/pull/145 -- gitgitgadget