git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: [PATCH v9 5/5] help: respect new common command grouping

From
Ramsay Jones <ramsay@ramsay1.demon.co.uk>
Date
May 20, 2015, 21:39 UTC
Message-ID
<555CFEF4.5000002@ramsay1.demon.co.uk>
In-Reply-To
<1432149781-24596-6-git-send-email-sebastien.guimmara@gmail.com>
On 20/05/15 20:23, Sébastien Guimmara wrote:
Show 33 quoted lines
> 'git help' shows common commands in alphabetical order:
> 
> The most commonly used git commands are:
>    add        Add file contents to the index
>    bisect     Find by binary search the change that introduced a bug
>    branch     List, create, or delete branches
>    checkout   Checkout a branch or paths to the working tree
>    clone      Clone a repository into a new directory
>    commit     Record changes to the repository
>    [...]
> 
> without any indication of how commands relate to high-level
> concepts or each other. Revise the output to explain their relationship
> with the typical Git workflow:
> 
> These are common Git commands used in various situations:
> 
> start a working area (see also: git help tutorial)
>    clone      Clone a repository into a new directory
>    init       Create an empty Git repository or reinitialize [...]
> 
> work on the current change (see also: git help everyday)
>    add        Add file contents to the index
>    reset      Reset current HEAD to the specified state
> 
> examine the history and state (see also: git help revisions)
>    log        Show commit logs
>    status     Show the working tree status
> 
>    [...]
> 
> Helped-by: Eric Sunshine <sunshine@sunshineco.com>
> Signed-off-by: Ramsay Jones <ramsay@ramsay1.demon.co.uk>

This should be (at most) 'Helped-by:' - my 'contribution' was so minor that even a 'Helped-by:' is generous! :-D

ATB, Ramsay Jones

Show 51 quoted lines
> Signed-off-by: Sébastien Guimmara <sebastien.guimmara@gmail.com>
> ---
>  help.c | 24 +++++++++++++++++++++++-
>  1 file changed, 23 insertions(+), 1 deletion(-)
> 
> diff --git a/help.c b/help.c
> index 2072a87..8f72051 100644
> --- a/help.c
> +++ b/help.c
> @@ -218,17 +218,39 @@ void list_commands(unsigned int colopts,
>  	}
>  }
>  
> +static int cmd_group_cmp(const void *elem1, const void *elem2)
> +{
> +	const struct cmdname_help *e1 = elem1;
> +	const struct cmdname_help *e2 = elem2;
> +
> +	if (e1->group < e2->group)
> +		return -1;
> +	if (e1->group > e2->group)
> +		return 1;
> +	return strcmp(e1->name, e2->name);
> +}
> +
>  void list_common_cmds_help(void)
>  {
>  	int i, longest = 0;
> +	int current_grp = -1;
>  
>  	for (i = 0; i < ARRAY_SIZE(common_cmds); i++) {
>  		if (longest < strlen(common_cmds[i].name))
>  			longest = strlen(common_cmds[i].name);
>  	}
>  
> -	puts(_("The most commonly used git commands are:"));
> +	qsort(common_cmds, ARRAY_SIZE(common_cmds),
> +		sizeof(common_cmds[0]), cmd_group_cmp);
> +
> +	puts(_("These are common Git commands used in various situations:"));
> +
>  	for (i = 0; i < ARRAY_SIZE(common_cmds); i++) {
> +		if (common_cmds[i].group != current_grp) {
> +			printf("\n%s\n", _(common_cmd_groups[common_cmds[i].group]));
> +			current_grp = common_cmds[i].group;
> +		}
> +
>  		printf("   %s   ", common_cmds[i].name);
>  		mput_char(' ', longest - strlen(common_cmds[i].name));
>  		puts(_(common_cmds[i].help));
> 
Previous: Sébastien GuimmaraNext: Sébastien Guimmara
Message 13 of 15 in “group common commands by theme”
  1. 0/5 group common commands by themeSébastien Guimmara, May 20, 2015
  2. 1/5 command-list: prepare machinery for upcoming "common groups" sectionSébastien Guimmara, May 20, 2015
  3. 2/5 command-list.txt: add the common groups blockSébastien Guimmara, May 20, 2015
  4. Eric SunshineMay 20, 2015
  5. Sébastien GuimmaraMay 20, 2015
  6. 3/5 generate-cmdlist: parse common group commandsSébastien Guimmara, May 20, 2015
  7. Sébastien GuimmaraMay 20, 2015
  8. Stefan BellerMay 20, 2015
  9. Sébastien GuimmaraMay 20, 2015
  10. Eric SunshineMay 20, 2015
  11. 4/5 command-list.txt: drop the "common" tagSébastien Guimmara, May 20, 2015
  12. 5/5 help: respect new common command groupingSébastien Guimmara, May 20, 2015
  13. Ramsay JonesMay 20, 2015
  14. Sébastien GuimmaraMay 20, 2015
  15. Eric SunshineMay 20, 2015

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.