summaryrefslogtreecommitdiff
path: root/archive.c
diff options
context:
space:
mode:
Diffstat (limited to 'archive.c')
-rw-r--r--archive.c41
1 files changed, 29 insertions, 12 deletions
diff --git a/archive.c b/archive.c
index 8be4e7ac8d..8309ea213e 100644
--- a/archive.c
+++ b/archive.c
@@ -14,7 +14,7 @@
#include "pretty.h"
#include "setup.h"
#include "refs.h"
-#include "object-store-ll.h"
+#include "object-store.h"
#include "commit.h"
#include "tree.h"
#include "tree-walk.h"
@@ -216,7 +216,7 @@ static int write_archive_entry(const struct object_id *oid, const char *base,
/* Stream it? */
if (S_ISREG(mode) && !args->convert &&
oid_object_info(args->repo, oid, &size) == OBJ_BLOB &&
- size > big_file_threshold)
+ size > repo_settings_get_big_file_threshold(the_repository))
return write_entry(args, oid, path.buf, path.len, mode, NULL, size);
buffer = object_file_to_archive(args, path.buf, oid, mode, &type, &size);
@@ -312,7 +312,7 @@ int write_archive_entries(struct archiver_args *args,
struct object_id fake_oid;
int i;
- oidcpy(&fake_oid, null_oid());
+ oidcpy(&fake_oid, null_oid(the_hash_algo));
if (args->baselen > 0 && args->base[args->baselen - 1] == '/') {
size_t len = args->baselen;
@@ -650,20 +650,37 @@ static int parse_archive_args(int argc, const char **argv,
OPT_STRING(0, "format", &format, N_("fmt"), N_("archive format")),
OPT_STRING(0, "prefix", &base, N_("prefix"),
N_("prepend prefix to each pathname in the archive")),
- { OPTION_CALLBACK, 0, "add-file", args, N_("file"),
- N_("add untracked file to archive"), 0, add_file_cb,
- (intptr_t)&base },
- { OPTION_CALLBACK, 0, "add-virtual-file", args,
- N_("path:content"), N_("add untracked file to archive"), 0,
- add_file_cb, (intptr_t)&base },
+ {
+ .type = OPTION_CALLBACK,
+ .long_name = "add-file",
+ .value = args,
+ .argh = N_("file"),
+ .help = N_("add untracked file to archive"),
+ .callback = add_file_cb,
+ .defval = (intptr_t) &base,
+ },
+ {
+ .type = OPTION_CALLBACK,
+ .long_name = "add-virtual-file",
+ .value = args,
+ .argh = N_("path:content"),
+ .help = N_("add untracked file to archive"),
+ .callback = add_file_cb,
+ .defval = (intptr_t) &base,
+ },
OPT_STRING('o', "output", &output, N_("file"),
N_("write the archive to this file")),
OPT_BOOL(0, "worktree-attributes", &worktree_attributes,
N_("read .gitattributes in working directory")),
OPT__VERBOSE(&verbose, N_("report archived files on stderr")),
- { OPTION_STRING, 0, "mtime", &mtime_option, N_("time"),
- N_("set modification time of archive entries"),
- PARSE_OPT_NONEG },
+ {
+ .type = OPTION_STRING,
+ .long_name = "mtime",
+ .value = &mtime_option,
+ .argh = N_("time"),
+ .help = N_("set modification time of archive entries"),
+ .flags = PARSE_OPT_NONEG,
+ },
OPT_NUMBER_CALLBACK(&compression_level,
N_("set compression level"), number_callback),
OPT_GROUP(""),