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

Re: cd

From
Andreas Ericsson <ae@op5.se>
Date
Apr 3, 2013, 22:55 UTC
Message-ID
<515CB375.9010104@op5.se>
In-Reply-To
<1365000547327-7581484.post@n2.nabble.com>
On 04/03/2013 04:49 PM, jpinheiro wrote:
Show 34 quoted lines
> Hi all,
>
> We are students from Universidade do Minho in Portugal, and we are using git
> in project as a case study.
> While experimenting with git we found an unexpected behavior with git rm.
> Here is a trace of the unexpected behavior:
>
> $ git init
> $ mkdir D
> $ echo "Hi" > D/F
> $ git add D/F
> $ rm -r D
> $ echo "Hey" > D
> $ git rm D/F
> warning: 'D/F': Not a directory
> rm 'D/F'
> fatal: git rm: 'D/F': Not a directory
>
>
> If the file D created with last echo did not exist or was named differently
> then no error would occur as expected. For example:
>
> $ git init
> $ mkdir D
> $ echo "Hi" > D/F
> $ git add D/F
> $ rm -r D
> $ echo "Hey" > F
> $ git rm D/F
>
> This works as expected, and the only difference is the name of the file of
> the last echo.
> Is this the expected behavior of git rm?
>

Yes. The only difference between 'git rm' and 'rm' is that git rm also removes the file from its index and prepares to commit a version without it. From git's point of view, it's not an error if the file doesn't exist. It *is* an error if the directory where the file should reside suddenly no longer a directory though.

-- 
Andreas Ericsson                   andreas.ericsson@op5.se
OP5 AB                             www.op5.se
Tel: +46 8-230225                  Fax: +46 8-230231

Considering the successes of the wars on alcohol, poverty, drugs and
terror, I think we should give some serious thought to declaring war
on peace.
Previous: jpinheiro
Message 2 of 2 in “cd”
  1. jpinheiroApr 3, 2013
  2. Andreas EricssonApr 3, 2013

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.