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

Re: bug? - git-checkout treeish paths ignores deleted files

From
Mark Levedahl <mlevedahl@gmail.com>
Date
Oct 9, 2007, 03:39 UTC
Message-ID
<470AF7F1.2010903@gmail.com>
In-Reply-To
<3B0685AB-0725-4473-8AE6-359F93851C10@wincent.com>
Wincent Colaiuta wrote:
Show 25 quoted lines
> El 9/10/2007, a las 2:58, Mark Levedahl escribió:
>
>> Shouldn't   "git checkout topic path"  make the directory tree rooted 
>> at path identical to what is on branch topic? It doesn't.
>>
>>
>
> No, the behaviour is correct.
>
> - first you removed the file on the topic branch; at the same time you 
> removed it from your working tree
> - then you switched back to the master branch and so the file was 
> added back to your working tree
> - then you switched back to the topic branch, and seeing as the file 
> "a" is not being tracked in the topic branch Git doesn't touch it
>
> In general, Git only meddles with stuff that you've told it to track. 
> This is actually a good thing in most cases because it makes some 
> workflows involving dirty trees or trees with untracked content 
> somewhat more convenient.
>
> Cheers,
> Wincent
>
>
I'm not convinced...

"git checkout branch dir" should make dir have the same value it would get if I just did "git checkout branch". The latter command will ignore files only if they are untracked in *both* HEAD and branch. I fail to see why the path-limited version of git-checkout should give a different result on the part it is asked to affect than the non-path limited version. This is very inconsistent and I'm having a hard time understanding what workflow it will help.

Mark
Previous: Wincent ColaiutaNext: Wincent Colaiuta
Message 3 of 4 in “bug? - git-checkout treeish paths ignores deleted files”
  1. Mark LevedahlOct 9, 2007
  2. Wincent ColaiutaOct 9, 2007
  3. Mark LevedahlOct 9, 2007
  4. Wincent ColaiutaOct 9, 2007

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.