From d6b64ed0f3549f56c4d948dc2c0f12abc52fd6c9 Mon Sep 17 00:00:00 2001 From: Matthias Kestenholz Date: Thu, 3 Aug 2006 17:24:35 +0200 Subject: Make git-name-rev a builtin Signed-off-by: Matthias Kestenholz Signed-off-by: Junio C Hamano --- git.c | 1 + 1 file changed, 1 insertion(+) (limited to 'git.c') diff --git a/git.c b/git.c index 6e72a893b7..501a7815fc 100644 --- a/git.c +++ b/git.c @@ -265,6 +265,7 @@ static void handle_internal_command(int argc, const char **argv, char **envp) { "mv", cmd_mv, NEEDS_PREFIX }, { "prune-packed", cmd_prune_packed, NEEDS_PREFIX }, { "repo-config", cmd_repo_config }, + { "name-rev", cmd_name_rev, NEEDS_PREFIX }, }; int i; -- cgit v1.2.1 From 5d4a60033543e063bc9d77ca957de0187fb58fb3 Mon Sep 17 00:00:00 2001 From: Matthias Kestenholz Date: Thu, 3 Aug 2006 17:24:36 +0200 Subject: Make git-pack-objects a builtin Signed-off-by: Matthias Kestenholz Signed-off-by: Junio C Hamano --- git.c | 1 + 1 file changed, 1 insertion(+) (limited to 'git.c') diff --git a/git.c b/git.c index 501a7815fc..5d58946f41 100644 --- a/git.c +++ b/git.c @@ -266,6 +266,7 @@ static void handle_internal_command(int argc, const char **argv, char **envp) { "prune-packed", cmd_prune_packed, NEEDS_PREFIX }, { "repo-config", cmd_repo_config }, { "name-rev", cmd_name_rev, NEEDS_PREFIX }, + { "pack-objects", cmd_pack_objects, NEEDS_PREFIX }, }; int i; -- cgit v1.2.1 From 6441363079d85cf17aee21b8925e9745c8abda16 Mon Sep 17 00:00:00 2001 From: Matthias Kestenholz Date: Thu, 3 Aug 2006 17:24:37 +0200 Subject: Make git-unpack-objects a builtin Signed-off-by: Matthias Kestenholz Signed-off-by: Junio C Hamano --- git.c | 1 + 1 file changed, 1 insertion(+) (limited to 'git.c') diff --git a/git.c b/git.c index 5d58946f41..7c3a7f8fd1 100644 --- a/git.c +++ b/git.c @@ -267,6 +267,7 @@ static void handle_internal_command(int argc, const char **argv, char **envp) { "repo-config", cmd_repo_config }, { "name-rev", cmd_name_rev, NEEDS_PREFIX }, { "pack-objects", cmd_pack_objects, NEEDS_PREFIX }, + { "unpack-objects", cmd_unpack_objects, NEEDS_PREFIX }, }; int i; -- cgit v1.2.1 From 640ce1052bbd6a8f1dd4d58beaa521d7592a0f02 Mon Sep 17 00:00:00 2001 From: Matthias Kestenholz Date: Thu, 3 Aug 2006 17:24:38 +0200 Subject: Make git-symbolic-ref a builtin Signed-off-by: Matthias Kestenholz Signed-off-by: Junio C Hamano --- git.c | 1 + 1 file changed, 1 insertion(+) (limited to 'git.c') diff --git a/git.c b/git.c index 7c3a7f8fd1..e40e85935c 100644 --- a/git.c +++ b/git.c @@ -268,6 +268,7 @@ static void handle_internal_command(int argc, const char **argv, char **envp) { "name-rev", cmd_name_rev, NEEDS_PREFIX }, { "pack-objects", cmd_pack_objects, NEEDS_PREFIX }, { "unpack-objects", cmd_unpack_objects, NEEDS_PREFIX }, + { "symbolic-ref", cmd_symbolic_ref, NEEDS_PREFIX }, }; int i; -- cgit v1.2.1 From e414156ab6e7869b29622ee3439e3c91361f5b0e Mon Sep 17 00:00:00 2001 From: Junio C Hamano Date: Fri, 4 Aug 2006 01:23:19 -0700 Subject: Make git-checkout-index a builtin Signed-off-by: Junio C Hamano --- git.c | 1 + 1 file changed, 1 insertion(+) (limited to 'git.c') diff --git a/git.c b/git.c index e40e85935c..07b6d3e9dd 100644 --- a/git.c +++ b/git.c @@ -269,6 +269,7 @@ static void handle_internal_command(int argc, const char **argv, char **envp) { "pack-objects", cmd_pack_objects, NEEDS_PREFIX }, { "unpack-objects", cmd_unpack_objects, NEEDS_PREFIX }, { "symbolic-ref", cmd_symbolic_ref, NEEDS_PREFIX }, + { "checkout-index", cmd_checkout_index, NEEDS_PREFIX }, }; int i; -- cgit v1.2.1 From f754fa9c5480c4556ad268fb5014c4b96cc7b9dc Mon Sep 17 00:00:00 2001 From: Junio C Hamano Date: Fri, 4 Aug 2006 01:51:04 -0700 Subject: builtins: Makefile clean-up This cleans up the build procedure for built-in commands by: - generating mostly redundant definition of BUILT_INS from BUILTIN_OBJS in the Makefile, - renaming a few files to make the above possible, and - sorting the built-in command table in git.c. It might be a good idea to binary search (or perfect hash) the built-in command table, but that can be done later when somebody feels like. Signed-off-by: Junio C Hamano --- git.c | 68 +++++++++++++++++++++++++++++++++---------------------------------- 1 file changed, 34 insertions(+), 34 deletions(-) (limited to 'git.c') diff --git a/git.c b/git.c index 07b6d3e9dd..754db1a2ee 100644 --- a/git.c +++ b/git.c @@ -224,52 +224,52 @@ static void handle_internal_command(int argc, const char **argv, char **envp) int (*fn)(int, const char **, const char *); int option; } commands[] = { - { "version", cmd_version }, - { "help", cmd_help }, - { "log", cmd_log, NEEDS_PREFIX | USE_PAGER }, - { "whatchanged", cmd_whatchanged, NEEDS_PREFIX | USE_PAGER }, - { "show", cmd_show, NEEDS_PREFIX | USE_PAGER }, - { "push", cmd_push }, - { "format-patch", cmd_format_patch, NEEDS_PREFIX }, - { "count-objects", cmd_count_objects }, - { "diff", cmd_diff, NEEDS_PREFIX }, - { "grep", cmd_grep, NEEDS_PREFIX }, - { "rm", cmd_rm, NEEDS_PREFIX }, { "add", cmd_add, NEEDS_PREFIX }, - { "rev-list", cmd_rev_list, NEEDS_PREFIX }, - { "init-db", cmd_init_db }, - { "get-tar-commit-id", cmd_get_tar_commit_id }, - { "upload-tar", cmd_upload_tar }, + { "apply", cmd_apply }, + { "cat-file", cmd_cat_file, NEEDS_PREFIX }, + { "checkout-index", cmd_checkout_index, NEEDS_PREFIX }, { "check-ref-format", cmd_check_ref_format }, - { "ls-files", cmd_ls_files, NEEDS_PREFIX }, - { "ls-tree", cmd_ls_tree, NEEDS_PREFIX }, - { "tar-tree", cmd_tar_tree, NEEDS_PREFIX }, - { "read-tree", cmd_read_tree, NEEDS_PREFIX }, { "commit-tree", cmd_commit_tree, NEEDS_PREFIX }, - { "apply", cmd_apply }, - { "show-branch", cmd_show_branch, NEEDS_PREFIX }, + { "count-objects", cmd_count_objects }, + { "diff", cmd_diff, NEEDS_PREFIX }, { "diff-files", cmd_diff_files, NEEDS_PREFIX }, { "diff-index", cmd_diff_index, NEEDS_PREFIX }, { "diff-stages", cmd_diff_stages, NEEDS_PREFIX }, { "diff-tree", cmd_diff_tree, NEEDS_PREFIX }, - { "cat-file", cmd_cat_file, NEEDS_PREFIX }, - { "rev-parse", cmd_rev_parse, NEEDS_PREFIX }, - { "write-tree", cmd_write_tree, NEEDS_PREFIX }, - { "mailsplit", cmd_mailsplit }, - { "mailinfo", cmd_mailinfo }, - { "stripspace", cmd_stripspace }, - { "update-index", cmd_update_index, NEEDS_PREFIX }, - { "update-ref", cmd_update_ref, NEEDS_PREFIX }, { "fmt-merge-msg", cmd_fmt_merge_msg, NEEDS_PREFIX }, - { "prune", cmd_prune, NEEDS_PREFIX }, + { "format-patch", cmd_format_patch, NEEDS_PREFIX }, + { "get-tar-commit-id", cmd_get_tar_commit_id }, + { "grep", cmd_grep, NEEDS_PREFIX }, + { "help", cmd_help }, + { "init-db", cmd_init_db }, + { "log", cmd_log, NEEDS_PREFIX | USE_PAGER }, + { "ls-files", cmd_ls_files, NEEDS_PREFIX }, + { "ls-tree", cmd_ls_tree, NEEDS_PREFIX }, + { "mailinfo", cmd_mailinfo }, + { "mailsplit", cmd_mailsplit }, { "mv", cmd_mv, NEEDS_PREFIX }, - { "prune-packed", cmd_prune_packed, NEEDS_PREFIX }, - { "repo-config", cmd_repo_config }, { "name-rev", cmd_name_rev, NEEDS_PREFIX }, { "pack-objects", cmd_pack_objects, NEEDS_PREFIX }, - { "unpack-objects", cmd_unpack_objects, NEEDS_PREFIX }, + { "prune", cmd_prune, NEEDS_PREFIX }, + { "prune-packed", cmd_prune_packed, NEEDS_PREFIX }, + { "push", cmd_push }, + { "read-tree", cmd_read_tree, NEEDS_PREFIX }, + { "repo-config", cmd_repo_config }, + { "rev-list", cmd_rev_list, NEEDS_PREFIX }, + { "rev-parse", cmd_rev_parse, NEEDS_PREFIX }, + { "rm", cmd_rm, NEEDS_PREFIX }, + { "show-branch", cmd_show_branch, NEEDS_PREFIX }, + { "show", cmd_show, NEEDS_PREFIX | USE_PAGER }, + { "stripspace", cmd_stripspace }, { "symbolic-ref", cmd_symbolic_ref, NEEDS_PREFIX }, - { "checkout-index", cmd_checkout_index, NEEDS_PREFIX }, + { "tar-tree", cmd_tar_tree, NEEDS_PREFIX }, + { "unpack-objects", cmd_unpack_objects, NEEDS_PREFIX }, + { "update-index", cmd_update_index, NEEDS_PREFIX }, + { "update-ref", cmd_update_ref, NEEDS_PREFIX }, + { "upload-tar", cmd_upload_tar }, + { "version", cmd_version }, + { "whatchanged", cmd_whatchanged, NEEDS_PREFIX | USE_PAGER }, + { "write-tree", cmd_write_tree, NEEDS_PREFIX }, }; int i; -- cgit v1.2.1 From efffea033457eedb90ad63596687564f797f12de Mon Sep 17 00:00:00 2001 From: Junio C Hamano Date: Fri, 4 Aug 2006 02:04:00 -0700 Subject: git.c: Rename NEEDS_PREFIX to RUN_SETUP As Matthias Kestenholz noted, the flag does not quite mean "needs prefix" -- it is more like "run setup_git_directory() before running this command", so rename it to avoid future confusion. While we are at it, rewrite the definition of options to make it obvious that we are talking about flag bits by using standard (1< --- git.c | 72 +++++++++++++++++++++++++++++++++---------------------------------- 1 file changed, 36 insertions(+), 36 deletions(-) (limited to 'git.c') diff --git a/git.c b/git.c index 754db1a2ee..96e596b1a3 100644 --- a/git.c +++ b/git.c @@ -213,8 +213,8 @@ static int handle_alias(int *argcp, const char ***argv) const char git_version_string[] = GIT_VERSION; -#define NEEDS_PREFIX 1 -#define USE_PAGER 2 +#define RUN_SETUP (1<<0) +#define USE_PAGER (1<<1) static void handle_internal_command(int argc, const char **argv, char **envp) { @@ -224,52 +224,52 @@ static void handle_internal_command(int argc, const char **argv, char **envp) int (*fn)(int, const char **, const char *); int option; } commands[] = { - { "add", cmd_add, NEEDS_PREFIX }, + { "add", cmd_add, RUN_SETUP }, { "apply", cmd_apply }, - { "cat-file", cmd_cat_file, NEEDS_PREFIX }, - { "checkout-index", cmd_checkout_index, NEEDS_PREFIX }, + { "cat-file", cmd_cat_file, RUN_SETUP }, + { "checkout-index", cmd_checkout_index, RUN_SETUP }, { "check-ref-format", cmd_check_ref_format }, - { "commit-tree", cmd_commit_tree, NEEDS_PREFIX }, + { "commit-tree", cmd_commit_tree, RUN_SETUP }, { "count-objects", cmd_count_objects }, - { "diff", cmd_diff, NEEDS_PREFIX }, - { "diff-files", cmd_diff_files, NEEDS_PREFIX }, - { "diff-index", cmd_diff_index, NEEDS_PREFIX }, - { "diff-stages", cmd_diff_stages, NEEDS_PREFIX }, - { "diff-tree", cmd_diff_tree, NEEDS_PREFIX }, - { "fmt-merge-msg", cmd_fmt_merge_msg, NEEDS_PREFIX }, - { "format-patch", cmd_format_patch, NEEDS_PREFIX }, + { "diff", cmd_diff, RUN_SETUP }, + { "diff-files", cmd_diff_files, RUN_SETUP }, + { "diff-index", cmd_diff_index, RUN_SETUP }, + { "diff-stages", cmd_diff_stages, RUN_SETUP }, + { "diff-tree", cmd_diff_tree, RUN_SETUP }, + { "fmt-merge-msg", cmd_fmt_merge_msg, RUN_SETUP }, + { "format-patch", cmd_format_patch, RUN_SETUP }, { "get-tar-commit-id", cmd_get_tar_commit_id }, - { "grep", cmd_grep, NEEDS_PREFIX }, + { "grep", cmd_grep, RUN_SETUP }, { "help", cmd_help }, { "init-db", cmd_init_db }, - { "log", cmd_log, NEEDS_PREFIX | USE_PAGER }, - { "ls-files", cmd_ls_files, NEEDS_PREFIX }, - { "ls-tree", cmd_ls_tree, NEEDS_PREFIX }, + { "log", cmd_log, RUN_SETUP | USE_PAGER }, + { "ls-files", cmd_ls_files, RUN_SETUP }, + { "ls-tree", cmd_ls_tree, RUN_SETUP }, { "mailinfo", cmd_mailinfo }, { "mailsplit", cmd_mailsplit }, - { "mv", cmd_mv, NEEDS_PREFIX }, - { "name-rev", cmd_name_rev, NEEDS_PREFIX }, - { "pack-objects", cmd_pack_objects, NEEDS_PREFIX }, - { "prune", cmd_prune, NEEDS_PREFIX }, - { "prune-packed", cmd_prune_packed, NEEDS_PREFIX }, + { "mv", cmd_mv, RUN_SETUP }, + { "name-rev", cmd_name_rev, RUN_SETUP }, + { "pack-objects", cmd_pack_objects, RUN_SETUP }, + { "prune", cmd_prune, RUN_SETUP }, + { "prune-packed", cmd_prune_packed, RUN_SETUP }, { "push", cmd_push }, - { "read-tree", cmd_read_tree, NEEDS_PREFIX }, + { "read-tree", cmd_read_tree, RUN_SETUP }, { "repo-config", cmd_repo_config }, - { "rev-list", cmd_rev_list, NEEDS_PREFIX }, - { "rev-parse", cmd_rev_parse, NEEDS_PREFIX }, - { "rm", cmd_rm, NEEDS_PREFIX }, - { "show-branch", cmd_show_branch, NEEDS_PREFIX }, - { "show", cmd_show, NEEDS_PREFIX | USE_PAGER }, + { "rev-list", cmd_rev_list, RUN_SETUP }, + { "rev-parse", cmd_rev_parse, RUN_SETUP }, + { "rm", cmd_rm, RUN_SETUP }, + { "show-branch", cmd_show_branch, RUN_SETUP }, + { "show", cmd_show, RUN_SETUP | USE_PAGER }, { "stripspace", cmd_stripspace }, - { "symbolic-ref", cmd_symbolic_ref, NEEDS_PREFIX }, - { "tar-tree", cmd_tar_tree, NEEDS_PREFIX }, - { "unpack-objects", cmd_unpack_objects, NEEDS_PREFIX }, - { "update-index", cmd_update_index, NEEDS_PREFIX }, - { "update-ref", cmd_update_ref, NEEDS_PREFIX }, + { "symbolic-ref", cmd_symbolic_ref, RUN_SETUP }, + { "tar-tree", cmd_tar_tree, RUN_SETUP }, + { "unpack-objects", cmd_unpack_objects, RUN_SETUP }, + { "update-index", cmd_update_index, RUN_SETUP }, + { "update-ref", cmd_update_ref, RUN_SETUP }, { "upload-tar", cmd_upload_tar }, { "version", cmd_version }, - { "whatchanged", cmd_whatchanged, NEEDS_PREFIX | USE_PAGER }, - { "write-tree", cmd_write_tree, NEEDS_PREFIX }, + { "whatchanged", cmd_whatchanged, RUN_SETUP | USE_PAGER }, + { "write-tree", cmd_write_tree, RUN_SETUP }, }; int i; @@ -286,7 +286,7 @@ static void handle_internal_command(int argc, const char **argv, char **envp) continue; prefix = NULL; - if (p->option & NEEDS_PREFIX) + if (p->option & RUN_SETUP) prefix = setup_git_directory(); if (p->option & USE_PAGER) setup_pager(); -- cgit v1.2.1 From 2e3ed670eb09feffe847af55db38da3dcecc2a88 Mon Sep 17 00:00:00 2001 From: Rene Scharfe Date: Thu, 10 Aug 2006 17:02:38 +0200 Subject: git-verify-pack: make builtin Convert git-verify-pack to a builtin command. Also rename ac to argc and av to argv for consistancy. Signed-off-by: Rene Scharfe Signed-off-by: Junio C Hamano --- git.c | 1 + 1 file changed, 1 insertion(+) (limited to 'git.c') diff --git a/git.c b/git.c index db0f86790d..5da7787d86 100644 --- a/git.c +++ b/git.c @@ -270,6 +270,7 @@ static void handle_internal_command(int argc, const char **argv, char **envp) { "version", cmd_version }, { "whatchanged", cmd_whatchanged, RUN_SETUP | USE_PAGER }, { "write-tree", cmd_write_tree, RUN_SETUP }, + { "verify-pack", cmd_verify_pack }, }; int i; -- cgit v1.2.1