• Josh Steadmon's avatar
    archive: initialize archivers earlier · 00436bf1
    Josh Steadmon authored
    Initialize archivers as soon as possible when running git-archive.
    Various non-obvious behavior depends on having the archivers
    initialized, such as determining the desired archival format from the
    provided filename.
    
    Since 08716b3c ("archive: refactor file extension format-guessing",
    2011-06-21), archive_format_from_filename() has used the registered
    archivers to match filenames (provided via --output) to archival
    formats. However, when git-archive is executed with --remote, format
    detection happens before the archivers have been registered. This causes
    archives from remotes to always be generated as TAR files, regardless of
    the actual filename (unless an explicit --format is provided).
    
    This patch fixes that behavior; archival format is determined properly
    from the output filename, even when --remote is used.
    Helped-by: default avatarJeff King <peff@peff.net>
    Signed-off-by: default avatarJosh Steadmon <steadmon@google.com>
    Signed-off-by: default avatarJunio C Hamano <gitster@pobox.com>
    00436bf1
archive.h 1.52 KB