mirror of
https://github.com/git/git.git
synced 2025-12-12 20:36:24 +01:00
repack: remove 'prepare_pack_objects' from the builtin
Now that the 'prepare_pack_objects' function no longer refers to external, static variables, move it out to repack.h as generic functionality. Signed-off-by: Taylor Blau <me@ttaylorr.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
committed by
Junio C Hamano
parent
e35ef71e00
commit
7005d2594b
@@ -288,40 +288,6 @@ static void collect_pack_filenames(struct existing_packs *existing,
|
||||
strbuf_release(&buf);
|
||||
}
|
||||
|
||||
static void prepare_pack_objects(struct child_process *cmd,
|
||||
const struct pack_objects_args *args,
|
||||
const char *out)
|
||||
{
|
||||
strvec_push(&cmd->args, "pack-objects");
|
||||
if (args->window)
|
||||
strvec_pushf(&cmd->args, "--window=%s", args->window);
|
||||
if (args->window_memory)
|
||||
strvec_pushf(&cmd->args, "--window-memory=%s", args->window_memory);
|
||||
if (args->depth)
|
||||
strvec_pushf(&cmd->args, "--depth=%s", args->depth);
|
||||
if (args->threads)
|
||||
strvec_pushf(&cmd->args, "--threads=%s", args->threads);
|
||||
if (args->max_pack_size)
|
||||
strvec_pushf(&cmd->args, "--max-pack-size=%lu", args->max_pack_size);
|
||||
if (args->no_reuse_delta)
|
||||
strvec_pushf(&cmd->args, "--no-reuse-delta");
|
||||
if (args->no_reuse_object)
|
||||
strvec_pushf(&cmd->args, "--no-reuse-object");
|
||||
if (args->name_hash_version)
|
||||
strvec_pushf(&cmd->args, "--name-hash-version=%d", args->name_hash_version);
|
||||
if (args->path_walk)
|
||||
strvec_pushf(&cmd->args, "--path-walk");
|
||||
if (args->local)
|
||||
strvec_push(&cmd->args, "--local");
|
||||
if (args->quiet)
|
||||
strvec_push(&cmd->args, "--quiet");
|
||||
if (args->delta_base_offset)
|
||||
strvec_push(&cmd->args, "--delta-base-offset");
|
||||
strvec_push(&cmd->args, out);
|
||||
cmd->git_cmd = 1;
|
||||
cmd->out = -1;
|
||||
}
|
||||
|
||||
struct write_oid_context {
|
||||
struct child_process *cmd;
|
||||
const struct git_hash_algo *algop;
|
||||
|
||||
35
repack.c
35
repack.c
@@ -1,5 +1,40 @@
|
||||
#include "git-compat-util.h"
|
||||
#include "repack.h"
|
||||
#include "run-command.h"
|
||||
|
||||
void prepare_pack_objects(struct child_process *cmd,
|
||||
const struct pack_objects_args *args,
|
||||
const char *out)
|
||||
{
|
||||
strvec_push(&cmd->args, "pack-objects");
|
||||
if (args->window)
|
||||
strvec_pushf(&cmd->args, "--window=%s", args->window);
|
||||
if (args->window_memory)
|
||||
strvec_pushf(&cmd->args, "--window-memory=%s", args->window_memory);
|
||||
if (args->depth)
|
||||
strvec_pushf(&cmd->args, "--depth=%s", args->depth);
|
||||
if (args->threads)
|
||||
strvec_pushf(&cmd->args, "--threads=%s", args->threads);
|
||||
if (args->max_pack_size)
|
||||
strvec_pushf(&cmd->args, "--max-pack-size=%lu", args->max_pack_size);
|
||||
if (args->no_reuse_delta)
|
||||
strvec_pushf(&cmd->args, "--no-reuse-delta");
|
||||
if (args->no_reuse_object)
|
||||
strvec_pushf(&cmd->args, "--no-reuse-object");
|
||||
if (args->name_hash_version)
|
||||
strvec_pushf(&cmd->args, "--name-hash-version=%d", args->name_hash_version);
|
||||
if (args->path_walk)
|
||||
strvec_pushf(&cmd->args, "--path-walk");
|
||||
if (args->local)
|
||||
strvec_push(&cmd->args, "--local");
|
||||
if (args->quiet)
|
||||
strvec_push(&cmd->args, "--quiet");
|
||||
if (args->delta_base_offset)
|
||||
strvec_push(&cmd->args, "--delta-base-offset");
|
||||
strvec_push(&cmd->args, out);
|
||||
cmd->git_cmd = 1;
|
||||
cmd->out = -1;
|
||||
}
|
||||
|
||||
void pack_objects_args_release(struct pack_objects_args *args)
|
||||
{
|
||||
|
||||
5
repack.h
5
repack.h
@@ -21,6 +21,11 @@ struct pack_objects_args {
|
||||
|
||||
#define PACK_OBJECTS_ARGS_INIT { .delta_base_offset = 1 }
|
||||
|
||||
struct child_process;
|
||||
|
||||
void prepare_pack_objects(struct child_process *cmd,
|
||||
const struct pack_objects_args *args,
|
||||
const char *out);
|
||||
void pack_objects_args_release(struct pack_objects_args *args);
|
||||
|
||||
#endif /* REPACK_H */
|
||||
|
||||
Reference in New Issue
Block a user