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

Re: [PATCH 1/2] for-each-repo: optionally keep going on an error

From
Eric Sunshine <sunshine@sunshineco.com>
Date
Apr 17, 2024, 08:36 UTC
Message-ID
<CAPig+cSjoGe7Eeynz=jGSaNYWXQ-VkvWv7mv1NDeCXPFEtdqOA@mail.gmail.com>
In-Reply-To
<6721e3ada5d125bd6c33561c694acb986b17b38f.1713342535.git.gitgitgadget@gmail.com>

On Wed, Apr 17, 2024 at 4:29 AM Johannes Schindelin via GitGitGadget <gitgitgadget@gmail.com> wrote:

Show 8 quoted lines
> In https://github.com/microsoft/git/issues/623, it was reported that
> the regularly scheduled maintenance stops if one repo in the middle of
> the list was found to be missing.
>
> This is undesirable, and points out a gap in the design of `git
> for-each-repo`: We need a mode where that command does not stop on an
> error, but continues to try the running the specified command with the
> other repositories.
s/try the running/try running/
Show 11 quoted lines
> Imitating the `--keep-going` option of GNU make, this commit teaches
> `for-each-repo` the same trick: to continue with the operation on all
> the remaining repositories in case there was a problem with one
> repository, still setting the exit code to indicate an error occurred.
>
> Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
> ---
> diff --git a/builtin/for-each-repo.c b/builtin/for-each-repo.c
> @@ -39,6 +40,8 @@ int cmd_for_each_repo(int argc, const char **argv, const char *prefix)
> +               OPT_BOOL(0, "keep-going", &keep_going,
> +                        N_("stop at the first repository where the operation failed")),

Isn't this help string opposite the intended meaning? Taking a hint from GNU "make --help", should it instead by something like:

    N_("keep going even if command fails in a repository")),
Previous: Johannes Schindelin via GitGitGadgetNext: Junio C Hamano
Message 3 of 19 in “Use a "best effort" strategy in scheduled maintenance”
  1. 0/2 Use a "best effort" strategy in scheduled maintenanceJohannes Schindelin via GitGitGadget, Apr 17, 2024
  2. 1/2 for-each-repo: optionally keep going on an errorJohannes Schindelin via GitGitGadget, Apr 17, 2024
  3. Eric SunshineApr 17, 2024
  4. Junio C HamanoApr 17, 2024
  5. 2/2 maintenance: running maintenance should not stop on errorsJohannes Schindelin via GitGitGadget, Apr 17, 2024
  6. Junio C HamanoApr 17, 2024
  7. Junio C HamanoApr 17, 2024
  8. 0/2 Use a "best effort" strategy in scheduled maintenanceJohannes Schindelin via GitGitGadget, Apr 18, 2024
  9. 1/2 for-each-repo: optionally keep going on an errorJohannes Schindelin via GitGitGadget, Apr 18, 2024
  10. Patrick SteinhardtApr 19, 2024
  11. Junio C HamanoApr 19, 2024
  12. Jeff KingApr 19, 2024
  13. Junio C HamanoApr 22, 2024
  14. 2/2 maintenance: running maintenance should not stop on errorsJohannes Schindelin via GitGitGadget, Apr 18, 2024
  15. 0/2 Use a "best effort" strategy in scheduled maintenanceJohannes Schindelin via GitGitGadget, Apr 24, 2024
  16. 1/2 for-each-repo: optionally keep going on an errorJohannes Schindelin via GitGitGadget, Apr 24, 2024
  17. Junio C HamanoApr 24, 2024
  18. 2/2 maintenance: running maintenance should not stop on errorsJohannes Schindelin via GitGitGadget, Apr 24, 2024
  19. Patrick SteinhardtApr 25, 2024

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.