Merge branch 'wc/add-i'

* wc/add-i:
  git-add -i: add help text for list-and-choose UI
  add -i: allow prefix highlighting for "Add untracked" as well.
  Highlight keyboard shortcuts in git-add--interactive
  Document all help keys in "git add -i" patch mode.
  Add "--patch" option to git-add--interactive
  add -i: Fix running from a subdirectory
  builtin-add: fix command line building to call interactive
  git-add -i: allow multiple selection in patch subcommand
  Add path-limiting to git-add--interactive
  Teach builtin-add to pass multiple paths to git-add--interactive
This commit is contained in:
Junio C Hamano
2007-12-04 21:38:28 -08:00
5 changed files with 242 additions and 46 deletions

View File

@ -163,7 +163,7 @@ static void add_remove_files(struct path_list *list)
}
}
static char *prepare_index(const char **files, const char *prefix)
static char *prepare_index(int argc, const char **argv, const char *prefix)
{
int fd;
struct tree *tree;
@ -171,7 +171,7 @@ static char *prepare_index(const char **files, const char *prefix)
const char **pathspec = NULL;
if (interactive) {
interactive_add();
interactive_add(argc, argv, prefix);
commit_style = COMMIT_AS_IS;
return get_index_file();
}
@ -179,8 +179,8 @@ static char *prepare_index(const char **files, const char *prefix)
if (read_cache() < 0)
die("index file corrupt");
if (*files)
pathspec = get_pathspec(prefix, files);
if (*argv)
pathspec = get_pathspec(prefix, argv);
/*
* Non partial, non as-is commit.
@ -603,7 +603,7 @@ int cmd_status(int argc, const char **argv, const char *prefix)
argc = parse_and_validate_options(argc, argv, builtin_status_usage);
index_file = prepare_index(argv, prefix);
index_file = prepare_index(argc, argv, prefix);
commitable = run_status(stdout, index_file, prefix);
@ -703,7 +703,7 @@ int cmd_commit(int argc, const char **argv, const char *prefix)
argc = parse_and_validate_options(argc, argv, builtin_commit_usage);
index_file = prepare_index(argv, prefix);
index_file = prepare_index(argc, argv, prefix);
if (!no_verify && run_hook(index_file, "pre-commit", NULL)) {
rollback_index_files();