[PATCH v6 2/4] sequencer: allow create_autostash to run silently
- From
Harald Nordgren via GitGitGadget <gitgitgadget@gmail.com>
- Date
- Mar 17, 2026, 09:35 UTC
- Message-ID
- <d572c4bb7df20b1dcca50f279d4a795027471407.1773740139.git.gitgitgadget@gmail.com>
- In-Reply-To
- <pull.2234.v6.git.git.1773740139.gitgitgadget@gmail.com>
From: Harald Nordgren <haraldnordgren@gmail.com>
Add a silent parameter to create_autostash_internal and introduce create_autostash_ref_silent so that callers can create an autostash without printing the "Created autostash" message. Use stderr for the message when not silent.
Signed-off-by: Harald Nordgren <haraldnordgren@gmail.com> --- sequencer.c | 15 +++++++++++---- sequencer.h | 1 + 2 files changed, 12 insertions(+), 4 deletions(-)
diff --git a/sequencer.c b/sequencer.c index aafd0bc959..eebefd731b 100644 --- a/sequencer.c +++ b/sequencer.c @@ -4632,7 +4632,8 @@ static enum todo_command peek_command(struct todo_list *todo_list, int offset) static void create_autostash_internal(struct repository *r, const char *path, - const char *refname) + const char *refname, + int silent) { struct strbuf buf = STRBUF_INIT; struct lock_file lock_file = LOCK_INIT; @@ -4677,7 +4678,8 @@ static void create_autostash_internal(struct repository *r, &oid, null_oid(the_hash_algo), 0, UPDATE_REFS_DIE_ON_ERR); } - printf(_("Created autostash: %s\n"), buf.buf); + if (!silent) + fprintf(stderr, _("Created autostash: %s\n"), buf.buf); if (reset_head(r, &ropts) < 0) die(_("could not reset --hard")); discard_index(r->index); @@ -4689,12 +4691,17 @@ static void create_autostash_internal(struct repository *r, void create_autostash(struct repository *r, const char *path) { - create_autostash_internal(r, path, NULL); + create_autostash_internal(r, path, NULL, 0); } void create_autostash_ref(struct repository *r, const char *refname) { - create_autostash_internal(r, NULL, refname); + create_autostash_internal(r, NULL, refname, 0); +} + +void create_autostash_ref_silent(struct repository *r, const char *refname) +{ + create_autostash_internal(r, NULL, refname, 1); } static int apply_save_autostash_oid(const char *stash_oid, int attempt_apply) diff --git a/sequencer.h b/sequencer.h index 719684c8a9..0b09d6799b 100644 --- a/sequencer.h +++ b/sequencer.h @@ -227,6 +227,7 @@ void commit_post_rewrite(struct repository *r, void create_autostash(struct repository *r, const char *path); void create_autostash_ref(struct repository *r, const char *refname); +void create_autostash_ref_silent(struct repository *r, const char *refname); int save_autostash(const char *path); int save_autostash_ref(struct repository *r, const char *refname); int apply_autostash(const char *path);
-- gitgitgadget