#ifndef ARCHIVE_H
#define ARCHIVE_H
#include "pathspec.h"
#include "string-list.h"
struct repository;
struct pretty_print_context;
struct archiver_args { … };
int write_archive(int argc, const char **argv, const char *prefix,
struct repository *repo,
const char *name_hint, int remote);
const char *archive_format_from_filename(const char *filename);
#define ARCHIVER_WANT_COMPRESSION_LEVELS …
#define ARCHIVER_REMOTE …
#define ARCHIVER_HIGH_COMPRESSION_LEVELS …
struct archiver { … };
void register_archiver(struct archiver *);
void init_tar_archiver(void);
void init_zip_archiver(void);
void init_archivers(void);
write_archive_entry_fn_t;
int write_archive_entries(struct archiver_args *args, write_archive_entry_fn_t write_entry);
#endif