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

Re: Proposal: adding --soft and --mixed options to git checkout

From
IOi o <lvsil4@outlook.com>
Date
Apr 25, 2023, 09:28 UTC
Message-ID
<DB9PR09MB6506FD114211F3806C48954AB0649@DB9PR09MB6506.eurprd09.prod.outlook.com>
In-Reply-To
<6446f5824dd5d_cd6129459@chronos.notmuch>
Felipe Contreras wrote:
> In my opinion it's pretty clear `--soft` and `--mixed` were terrible names and
> I suggested in the past to rename them to `--no-stage` and `--stage` [1]. We
> should not repeat those mistakes with `git checkout`.
No problem with renaming, but this might also be an oppurtunity to reconsider the meaning of the two options to incorporate `--keep-index`. Maybe `--no-stage` should mean 'switch HEAD and the working tree but leave the staging area' (i.e. the equivalent of `--keep-index`), and `--no-work` should mean 'switch HEAD and the staging area but leave the working tree' (i.e. the equivalent of `--mixed`). `--soft` could then be achieved by combining these options: `--no-stage --no-work`, but it could be a worthwhile convenience to add a separate option for that (just moving the HEAD), so maybe `--head` or something like that.
> In my mind the whole point of `git checkout` is to update the work-tree, if the
> command is not going to do that, then I don't think it should be `git
> checkout`.
I suppose something similar could also be said about `git reset` though? Maybe this would support the general move away from those legacy commands towards the new set of commands, so putting these new options in `git switch` instead seems reasonable.
Previous: Felipe ContrerasNext: Felipe Contreras
Message 3 of 4 in “Proposal: adding --soft and --mixed options to git checkout”
  1. i oApr 24, 2023
  2. Felipe ContrerasApr 24, 2023
  3. i oApr 25, 2023
  4. Felipe ContrerasApr 27, 2023

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.