git/archive.c

#define USE_THE_REPOSITORY_VARIABLE

#include "git-compat-util.h"
#include "abspath.h"
#include "config.h"
#include "convert.h"
#include "environment.h"
#include "gettext.h"
#include "hex.h"
#include "object-name.h"
#include "path.h"
#include "pretty.h"
#include "setup.h"
#include "refs.h"
#include "object-store-ll.h"
#include "commit.h"
#include "tree.h"
#include "tree-walk.h"
#include "attr.h"
#include "archive.h"
#include "parse-options.h"
#include "unpack-trees.h"
#include "quote.h"

static char const * const archive_usage[] =;

static const struct archiver **archivers;
static int nr_archivers;
static int alloc_archivers;
static int remote_allow_unreachable;

void register_archiver(struct archiver *ar)
{}

void init_archivers(void)
{}

static void format_subst(const struct commit *commit,
			 const char *src, size_t len,
			 struct strbuf *buf, struct pretty_print_context *ctx)
{}

static void *object_file_to_archive(const struct archiver_args *args,
				    const char *path,
				    const struct object_id *oid,
				    unsigned int mode,
				    enum object_type *type,
				    unsigned long *sizep)
{}

struct directory {};

struct archiver_context {};

static const struct attr_check *get_archive_attrs(struct index_state *istate,
						  const char *path)
{}

static int check_attr_export_ignore(const struct attr_check *check)
{}

static int check_attr_export_subst(const struct attr_check *check)
{}

static int write_archive_entry(const struct object_id *oid, const char *base,
		int baselen, const char *filename, unsigned mode,
		void *context)
{}

static void queue_directory(const struct object_id *oid,
		struct strbuf *base, const char *filename,
		unsigned mode, struct archiver_context *c)
{}

static int write_directory(struct archiver_context *c)
{}

static int queue_or_write_archive_entry(const struct object_id *oid,
		struct strbuf *base, const char *filename,
		unsigned mode, void *context)
{}

struct extra_file_info {};

int write_archive_entries(struct archiver_args *args,
		write_archive_entry_fn_t write_entry)
{}

static const struct archiver *lookup_archiver(const char *name)
{}

struct path_exists_context {};

static int reject_entry(const struct object_id *oid UNUSED,
			struct strbuf *base,
			const char *filename, unsigned mode,
			void *context)
{}

static int reject_outside(const struct object_id *oid UNUSED,
			  struct strbuf *base, const char *filename,
			  unsigned mode, void *context)
{}

static int path_exists(struct archiver_args *args, const char *path)
{}

static void parse_pathspec_arg(const char **pathspec,
		struct archiver_args *ar_args)
{}

static void parse_treeish_arg(const char **argv,
			      struct archiver_args *ar_args, int remote)
{}

static void extra_file_info_clear(void *util, const char *str UNUSED)
{}

static int add_file_cb(const struct option *opt, const char *arg, int unset)
{}

static int number_callback(const struct option *opt, const char *arg, int unset)
{}

static int parse_archive_args(int argc, const char **argv,
		const struct archiver **ar, struct archiver_args *args,
		const char *name_hint, int is_remote)
{}

int write_archive(int argc, const char **argv, const char *prefix,
		  struct repository *repo,
		  const char *name_hint, int remote)
{}

static int match_extension(const char *filename, const char *ext)
{}

const char *archive_format_from_filename(const char *filename)
{}