diff options
author | John Keeping <john@keeping.me.uk> | 2013-11-10 19:47:29 +0400 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2013-11-13 02:10:19 +0400 |
commit | 925ceccf050e2998c2b805476b529bdf5352cf74 (patch) | |
tree | 306aa79d2d43c22720644c67d655d7a3540970ac /builtin | |
parent | eb8e7e1d9a946f439e0e35f2ada9efb434ea8b60 (diff) |
tar-tree: remove deprecated command
"git tar-tree" has been a thin wrapper around "git archive" since commit
fd88d9c (Remove upload-tar and make git-tar-tree a thin wrapper to
git-archive, 2006-09-24), which also made it print a message indicating
that git-tar-tree is deprecated.
Signed-off-by: John Keeping <john@keeping.me.uk>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'builtin')
-rw-r--r-- | builtin/tar-tree.c | 62 |
1 files changed, 0 insertions, 62 deletions
diff --git a/builtin/tar-tree.c b/builtin/tar-tree.c index ba3ffe69a9..aa72596083 100644 --- a/builtin/tar-tree.c +++ b/builtin/tar-tree.c @@ -7,71 +7,9 @@ #include "builtin.h" #include "quote.h" -static const char tar_tree_usage[] = -"git tar-tree [--remote=<repo>] <tree-ish> [basedir]\n" -"*** Note that this command is now deprecated; use \"git archive\" instead."; - static const char builtin_get_tar_commit_id_usage[] = "git get-tar-commit-id < <tarfile>"; -int cmd_tar_tree(int argc, const char **argv, const char *prefix) -{ - /* - * "git tar-tree" is now a wrapper around "git archive --format=tar" - * - * $0 --remote=<repo> arg... ==> - * git archive --format=tar --remote=<repo> arg... - * $0 tree-ish ==> - * git archive --format=tar tree-ish - * $0 tree-ish basedir ==> - * git archive --format-tar --prefix=basedir tree-ish - */ - const char **nargv = xcalloc(sizeof(*nargv), argc + 3); - struct strbuf sb = STRBUF_INIT; - char *basedir_arg; - int nargc = 0; - - nargv[nargc++] = "archive"; - nargv[nargc++] = "--format=tar"; - - if (2 <= argc && !prefixcmp(argv[1], "--remote=")) { - nargv[nargc++] = argv[1]; - argv++; - argc--; - } - - /* - * Because it's just a compatibility wrapper, tar-tree supports only - * the old behaviour of reading attributes from the work tree. - */ - nargv[nargc++] = "--worktree-attributes"; - - switch (argc) { - default: - usage(tar_tree_usage); - break; - case 3: - /* base-path */ - basedir_arg = xmalloc(strlen(argv[2]) + 11); - sprintf(basedir_arg, "--prefix=%s/", argv[2]); - nargv[nargc++] = basedir_arg; - /* fallthru */ - case 2: - /* tree-ish */ - nargv[nargc++] = argv[1]; - } - nargv[nargc] = NULL; - - fprintf(stderr, - "*** \"git tar-tree\" is now deprecated.\n" - "*** Running \"git archive\" instead.\n***"); - sq_quote_argv(&sb, nargv, 0); - strbuf_addch(&sb, '\n'); - fputs(sb.buf, stderr); - strbuf_release(&sb); - return cmd_archive(nargc, nargv, prefix); -} - /* ustar header + extended global header content */ #define RECORDSIZE (512) #define HEADERSIZE (2 * RECORDSIZE) |