threads / discuss / 27159

git incorrectly infers rename i.e. (delete file1 + creation of new file2) != (file => file2)

Subject: git incorrectly infers rename i.e. (delete file1 + creation of new file2) != (file => file2)

## tl;dr

2 messages between Apr 22, 2011 and Apr 22, 2011.

replies: 1people: 2as markdown or json

Mike· Apr 22, 2011, 00:31 UTC · lore
Hi

I deleted a file called 'class.NumberOfResultsCache.php' and created a completely different file called 'cgi-bin/___php/class.NumberOfResults.php'. I deleted the file using rm followed by 'git rm'.

When I do a 'git status' I now get told:
   renamed:    cgi-bin/___php/class.NumberOfResultsCache.php ->
cgi-bin/___php/class.NumberOfResults.php

However I want to commit 'class.NumberOfResultsCache.php' as having been deleted, and I want to commit 'class.NumberOfResults.php' as a brand new file.

How do I get git to do this? Apologies for a 'noob' question. Only been using the superb git for a couple of weeks!

Thanks :)
B Smith-Mannschott· Apr 22, 2011, 05:22 UTC · re: Mike · lore

Re: git incorrectly infers rename i.e. (delete file1 + creation of new file2) != (file => file2)

On Fri, Apr 22, 2011 at 02:31, Mike <xandrani@gmail.com> wrote:
Show 5 quoted lines
> Hi
>
> I deleted a file called 'class.NumberOfResultsCache.php' and created a
> completely different file called
> 'cgi-bin/___php/class.NumberOfResults.php'.

"completely different" in what they mean to you, or in their actual content? Please be more specific.

Show 11 quoted lines
> I deleted the file using
> rm followed by 'git rm'.
>
> When I do a 'git status' I now get told:
>
>   renamed:    cgi-bin/___php/class.NumberOfResultsCache.php ->
> cgi-bin/___php/class.NumberOfResults.php
>
> However I want to commit 'class.NumberOfResultsCache.php' as having
> been deleted, and I want to commit 'class.NumberOfResults.php' as a
> brand new file.

Git doesn't care about individual files or renames, it tracks whole trees. What it shows as a rename is just its best guess based on the contents of the two files.

> How do I get git to do this? Apologies for a 'noob' question. Only
> been using the superb git for a couple of weeks!

You could commit the deletion and the add separately, but before doing that, why is it important to you that git not show this change as a potential rename?

// Ben
Show 6 quoted lines
> Thanks :)
> --
> To unsubscribe from this list: send the line "unsubscribe git" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
>

← back to recent threads