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

Re: Checkout file without changing index?

From
Sitaram Chamarty <sitaramc@gmail.com>
Date
Apr 25, 2019, 03:40 UTC
Message-ID
<005b0aed-2c20-0c91-e4ad-98b0ec39359d@gmail.com>
In-Reply-To
<xmqq5zr31poo.fsf@gitster-ct.c.googlers.com>
On 24/04/2019 19.16, Junio C Hamano wrote:
Show 19 quoted lines
> Piotr Krukowiecki <piotr.krukowiecki@gmail.com> writes:
> 
>> I was familiar with "git checkout revision -- file".
>>
>> But it updates both working tree and index. I had some changes in
>> index (staged) and "git checkout HEAD -- file" silently overwritten
>> it. Well, probably my mistake, it's documented.
> 
> We'd invite you to live on the leading edge and try
> 
>     $ git restore --source=<revision> <pathspec>
> 
> which by default checks things out only to the working tree, but not
> to the index (you say --staged if you want to restore to the index,
> and you say --worktree if you want to restore to the working tree,
> or you can say both, which would be the same as "git checkout").
> 
> I think the new command is now on the 'pu' branch, but in a few
> weeks hopefully it will appear on the 'next' branch.

I'm not in a position to use either of those on at least some of my systems, but meanwhile, I thought I'd ask this: what is the difference between this and "git show REF:PATH > PATH", in terms of side-effects.

(I.e., any differences other than looking cleaner, not having to repeat "PATH" etc.)

thanks sitaram

Previous: Philip OakleyNext: Junio C Hamano
Message 5 of 6 in “Checkout file without changing index?”
  1. Piotr KrukowieckiApr 24, 2019
  2. Junio C HamanoApr 24, 2019
  3. Piotr KrukowieckiApr 24, 2019
  4. Philip OakleyApr 24, 2019
  5. Sitaram ChamartyApr 25, 2019
  6. Junio C HamanoApr 25, 2019

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.