/* Automatically generated by ./generate-cmdlist.sh */
struct cmdname_help {
	char name[16];
	char help[80];
	unsigned char group;
};

static const char *common_cmd_groups[] = {
	N_("start a working area (see also: git help tutorial)"),
	N_("work on the current change (see also: git help everyday)"),
	N_("examine the history and state (see also: git help revisions)"),
	N_("grow, mark and tweak your common history"),
	N_("collaborate (see also: git help workflows)"),
};

static struct cmdname_help common_cmds[] = {
	{"add", N_("Add file contents to the index"), 1},
	{"bisect", N_("Use binary search to find the commit that introduced a bug"), 2},
	{"branch", N_("List, create, or delete branches"), 3},
	{"checkout", N_("Switch branches or restore working tree files"), 3},
	{"clone", N_("Clone a repository into a new directory"), 0},
	{"commit", N_("Record changes to the repository"), 3},
	{"diff", N_("Show changes between commits, commit and working tree, etc"), 3},
	{"fetch", N_("Download objects and refs from another repository"), 4},
	{"grep", N_("Print lines matching a pattern"), 2},
	{"init", N_("Create an empty Git repository or reinitialize an existing one"), 0},
	{"log", N_("Show commit logs"), 2},
	{"merge", N_("Join two or more development histories together"), 3},
	{"mv", N_("Move or rename a file, a directory, or a symlink"), 1},
	{"pull", N_("Fetch from and integrate with another repository or a local branch"), 4},
	{"push", N_("Update remote refs along with associated objects"), 4},
	{"rebase", N_("Reapply commits on top of another base tip"), 3},
	{"reset", N_("Reset current HEAD to the specified state"), 1},
	{"rm", N_("Remove files from the working tree and from the index"), 1},
	{"show", N_("Show various types of objects"), 2},
	{"status", N_("Show the working tree status"), 2},
	{"tag", N_("Create, list, delete or verify a tag object signed with GPG"), 3},
};
