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

Re: [PATCH 11/18] builtin rebase: support `--autostash` option

From
Johannes Schindelin <johannes.schindelin@gmx.de>
Date
Aug 24, 2018, 16:06 UTC
Message-ID
<nycvar.QRO.7.76.6.1808241805550.73@tvgsbejvaqbjf.bet>
In-Reply-To
<CACsJy8CS5aABuQrqWxdfLOTbFRhQDQ+tFO+wOCLTdeJG8mH0hw@mail.gmail.com>
Hi Duy,
On Sat, 18 Aug 2018, Duy Nguyen wrote:
Show 25 quoted lines
> On Wed, Aug 8, 2018 at 5:26 PM Pratik Karki <predatoramigo@gmail.com> wrote:
> > @@ -224,13 +219,56 @@ static int read_basic_state(struct rebase_options *opts)
> >         return 0;
> >  }
> >
> > +static int apply_autostash(struct rebase_options *opts)
> > +{
> > +       const char *path = state_dir_path("autostash", opts);
> > +       struct strbuf autostash = STRBUF_INIT;
> > +       struct child_process stash_apply = CHILD_PROCESS_INIT;
> > +
> > +       if (!file_exists(path))
> > +               return 0;
> > +
> > +       if (read_one(state_dir_path("autostash", opts), &autostash))
> > +               return error(_("Could not read '%s'"), path);
> > +       argv_array_pushl(&stash_apply.args,
> > +                        "stash", "apply", autostash.buf, NULL);
> > +       stash_apply.git_cmd = 1;
> > +       stash_apply.no_stderr = stash_apply.no_stdout =
> > +               stash_apply.no_stdin = 1;
> > +       if (!run_command(&stash_apply))
> > +               printf("Applied autostash.\n");
> 
> I think you need _() here.
Good catch.

Will fix before sending v2, Dscho

Show 40 quoted lines
> 
> > +       else {
> > +               struct argv_array args = ARGV_ARRAY_INIT;
> > +               int res = 0;
> > +
> > +               argv_array_pushl(&args,
> > +                                "stash", "store", "-m", "autostash", "-q",
> > +                                autostash.buf, NULL);
> > +               if (run_command_v_opt(args.argv, RUN_GIT_CMD))
> > +                       res = error(_("Cannot store %s"), autostash.buf);
> > +               argv_array_clear(&args);
> > +               strbuf_release(&autostash);
> > +               if (res)
> > +                       return res;
> > +
> > +               fprintf(stderr,
> > +                       _("Applying autostash resulted in conflicts.\n"
> > +                         "Your changes are safe in the stash.\n"
> > +                         "You can run \"git stash pop\" or \"git stash drop\" "
> > +                         "at any time.\n"));
> > +       }
> > +
> > +       strbuf_release(&autostash);
> > +       return 0;
> > +}
> > +
> >  static int finish_rebase(struct rebase_options *opts)
> >  {
> >         struct strbuf dir = STRBUF_INIT;
> >         const char *argv_gc_auto[] = { "gc", "--auto", NULL };
> >
> >         delete_ref(NULL, "REBASE_HEAD", NULL, REF_NO_DEREF);
> > -       apply_autostash();
> > +       apply_autostash(opts);
> >         close_all_packs(the_repository->objects);
> >         /*
> >          * We ignore errors in 'gc --auto', since the
> -- 
> Duy
> 
Previous: Duy NguyenNext: Pratik Karki
Message 15 of 44 in “builtin rebase options”
  1. Pratik KarkiAug 8, 2018
  2. 01/18 builtin rebase: allow selecting the rebase "backend"Pratik Karki, Aug 8, 2018
  3. 02/18 builtin rebase: support --signoffPratik Karki, Aug 8, 2018
  4. 03/18 builtin rebase: support --rerere-autoupdatePratik Karki, Aug 8, 2018
  5. 04/18 builtin rebase: support --committer-date-is-author-datePratik Karki, Aug 8, 2018
  6. 05/18 builtin rebase: support `ignore-whitespace` optionPratik Karki, Aug 8, 2018
  7. 06/18 builtin rebase: support `ignore-date` optionPratik Karki, Aug 8, 2018
  8. 07/18 builtin rebase: support `keep-empty` optionPratik Karki, Aug 8, 2018
  9. Johannes SchindelinAug 24, 2018
  10. 08/18 builtin rebase: support `--autosquash`Pratik Karki, Aug 8, 2018
  11. 09/18 builtin rebase: support `--gpg-sign` optionPratik Karki, Aug 8, 2018
  12. 10/18 builtin rebase: support `-C` and `--whitespace=<type>`Pratik Karki, Aug 8, 2018
  13. 11/18 builtin rebase: support `--autostash` optionPratik Karki, Aug 8, 2018
  14. Duy NguyenAug 18, 2018
  15. Johannes SchindelinAug 24, 2018
  16. 12/18 builtin rebase: support `--exec`Pratik Karki, Aug 8, 2018
  17. 13/18 builtin rebase: support `--allow-empty-message` optionPratik Karki, Aug 8, 2018
  18. 14/18 builtin rebase: support --rebase-merges[=[no-]rebase-cousins]Pratik Karki, Aug 8, 2018
  19. 15/18 merge-base --fork-point: extract libified functionPratik Karki, Aug 8, 2018
  20. 16/18 builtin rebase: support `fork-point` optionPratik Karki, Aug 8, 2018
  21. 17/18 builtin rebase: add support for custom merge strategiesPratik Karki, Aug 8, 2018
  22. 18/18 builtin rebase: support --rootPratik Karki, Aug 8, 2018
  23. 00/18 builtin rebase optionsJohannes Schindelin via GitGitGadget, Sep 4, 2018
  24. 01/18 builtin rebase: allow selecting the rebase "backend"Pratik Karki via GitGitGadget, Sep 4, 2018
  25. 02/18 builtin rebase: support --signoffPratik Karki via GitGitGadget, Sep 4, 2018
  26. 03/18 builtin rebase: support --rerere-autoupdatePratik Karki via GitGitGadget, Sep 4, 2018
  27. 04/18 builtin rebase: support --committer-date-is-author-datePratik Karki via GitGitGadget, Sep 4, 2018
  28. 05/18 builtin rebase: support `ignore-whitespace` optionPratik Karki via GitGitGadget, Sep 4, 2018
  29. 06/18 builtin rebase: support `ignore-date` optionPratik Karki via GitGitGadget, Sep 4, 2018
  30. 07/18 builtin rebase: support `keep-empty` optionPratik Karki via GitGitGadget, Sep 4, 2018
  31. 08/18 builtin rebase: support `--autosquash`Pratik Karki via GitGitGadget, Sep 4, 2018
  32. 09/18 builtin rebase: support `--gpg-sign` optionPratik Karki via GitGitGadget, Sep 4, 2018
  33. 11/18 builtin rebase: support `--autostash` optionPratik Karki via GitGitGadget, Sep 4, 2018
  34. 10/18 builtin rebase: support `-C` and `--whitespace=<type>`Pratik Karki via GitGitGadget, Sep 4, 2018
  35. 12/18 builtin rebase: support `--exec`Pratik Karki via GitGitGadget, Sep 4, 2018
  36. 13/18 builtin rebase: support `--allow-empty-message` optionPratik Karki via GitGitGadget, Sep 4, 2018
  37. 14/18 builtin rebase: support --rebase-merges[=[no-]rebase-cousins]Pratik Karki via GitGitGadget, Sep 4, 2018
  38. 15/18 merge-base --fork-point: extract libified functionPratik Karki via GitGitGadget, Sep 4, 2018
  39. 16/18 builtin rebase: support `fork-point` optionPratik Karki via GitGitGadget, Sep 4, 2018
  40. 17/18 builtin rebase: add support for custom merge strategiesPratik Karki via GitGitGadget, Sep 4, 2018
  41. 18/18 builtin rebase: support --rootPratik Karki via GitGitGadget, Sep 4, 2018
  42. Junio C HamanoSep 6, 2018
  43. Junio C HamanoSep 6, 2018
  44. Johannes SchindelinOct 12, 2018

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.