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

Re: Unexpected empty directory removal

From
GWGary Wilson <gary.wilson@of-networks.co.uk>
Date
Apr 12, 2012, 19:11 UTC
Message-ID
<4F8728CB.2030201@of-networks.co.uk>
In-Reply-To
<7vehrs6bt1.fsf@alter.siamese.dyndns.org>

Thanks for the clarification and verification of that expected behaviour Junio. I shall keep this in mind.

Regards Gary

On 12/04/12 19:32, Junio C Hamano wrote:
Show 24 quoted lines
> Gary Wilson <gary.wilson@of-networks.co.uk> writes:
>
>> Use case to replicate:
>>
>> 1. Have path/files/a.file exists (and/or path/files/*) on client A and
>> client B
>> 2. Remove the physical files from the path/files/ directory on client A,
>> so that the directory is empty
>> 3. git commit
>> 4. git pull on client B
>> 5. On client A an empty path/files/ directory exists on client B it has
>> been removed, meaning path/files/ no longer exists.
>>
>> Is this the expected behaviour?
> As Git does not track directories at all, but merely uses directories as a
> means to instantiate files (which it tracks), when the last file is
> removed as the result of a merge in repository B, it notices that the
> directory is no longer needed to hold anything it cares about, and removes
> it.
>
> If you ran "git rm path/files/a.file" in repository A to remove the last
> file in the directory may also remove the now-empty directory (I do not
> remember offhand if it does), which is also expected.
>
Previous: Junio C Hamano
Message 3 of 3 in “Unexpected empty directory removal”
  1. Gary WilsonApr 12, 2012
  2. Junio C HamanoApr 12, 2012
  3. Gary WilsonApr 12, 2012

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.