Browse Source

trailer: add interpret-trailers command

This patch adds the "git interpret-trailers" command.
This command uses the previously added process_trailers()
function in trailer.c.

Signed-off-by: Christian Couder <chriscool@tuxfamily.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
maint
Christian Couder 10 years ago committed by Junio C Hamano
parent
commit
6634f05454
  1. 1
      .gitignore
  2. 1
      Makefile
  3. 1
      builtin.h
  4. 44
      builtin/interpret-trailers.c
  5. 1
      git.c

1
.gitignore vendored

@ -74,6 +74,7 @@ @@ -74,6 +74,7 @@
/git-index-pack
/git-init
/git-init-db
/git-interpret-trailers
/git-instaweb
/git-log
/git-ls-files

1
Makefile

@ -828,6 +828,7 @@ BUILTIN_OBJS += builtin/hash-object.o @@ -828,6 +828,7 @@ BUILTIN_OBJS += builtin/hash-object.o
BUILTIN_OBJS += builtin/help.o
BUILTIN_OBJS += builtin/index-pack.o
BUILTIN_OBJS += builtin/init-db.o
BUILTIN_OBJS += builtin/interpret-trailers.o
BUILTIN_OBJS += builtin/log.o
BUILTIN_OBJS += builtin/ls-files.o
BUILTIN_OBJS += builtin/ls-remote.o

1
builtin.h

@ -73,6 +73,7 @@ extern int cmd_hash_object(int argc, const char **argv, const char *prefix); @@ -73,6 +73,7 @@ extern int cmd_hash_object(int argc, const char **argv, const char *prefix);
extern int cmd_help(int argc, const char **argv, const char *prefix);
extern int cmd_index_pack(int argc, const char **argv, const char *prefix);
extern int cmd_init_db(int argc, const char **argv, const char *prefix);
extern int cmd_interpret_trailers(int argc, const char **argv, const char *prefix);
extern int cmd_log(int argc, const char **argv, const char *prefix);
extern int cmd_log_reflog(int argc, const char **argv, const char *prefix);
extern int cmd_ls_files(int argc, const char **argv, const char *prefix);

44
builtin/interpret-trailers.c

@ -0,0 +1,44 @@ @@ -0,0 +1,44 @@
/*
* Builtin "git interpret-trailers"
*
* Copyright (c) 2013, 2014 Christian Couder <chriscool@tuxfamily.org>
*
*/

#include "cache.h"
#include "builtin.h"
#include "parse-options.h"
#include "string-list.h"
#include "trailer.h"

static const char * const git_interpret_trailers_usage[] = {
N_("git interpret-trailers [--trim-empty] [(--trailer <token>[(=|:)<value>])...] [<file>...]"),
NULL
};

int cmd_interpret_trailers(int argc, const char **argv, const char *prefix)
{
int trim_empty = 0;
struct string_list trailers = STRING_LIST_INIT_DUP;

struct option options[] = {
OPT_BOOL(0, "trim-empty", &trim_empty, N_("trim empty trailers")),
OPT_STRING_LIST(0, "trailer", &trailers, N_("trailer"),
N_("trailer(s) to add")),
OPT_END()
};

argc = parse_options(argc, argv, prefix, options,
git_interpret_trailers_usage, 0);

if (argc) {
int i;
for (i = 0; i < argc; i++)
process_trailers(argv[i], trim_empty, &trailers);
} else
process_trailers(NULL, trim_empty, &trailers);

string_list_clear(&trailers, 0);

return 0;
}

1
git.c

@ -418,6 +418,7 @@ static struct cmd_struct commands[] = { @@ -418,6 +418,7 @@ static struct cmd_struct commands[] = {
{ "index-pack", cmd_index_pack, RUN_SETUP_GENTLY },
{ "init", cmd_init_db, NO_SETUP },
{ "init-db", cmd_init_db, NO_SETUP },
{ "interpret-trailers", cmd_interpret_trailers, RUN_SETUP },
{ "log", cmd_log, RUN_SETUP },
{ "ls-files", cmd_ls_files, RUN_SETUP },
{ "ls-remote", cmd_ls_remote, RUN_SETUP_GENTLY },

Loading…
Cancel
Save