Subject: Re: Choosing between "renaming" and "copy"

From: Andreas Ericsson <[email-masked]>
Date: Thu, 12 Mar 2009 15:44:25 +0100

Samuel Tardieu wrote:
> I renamed a file in my repository, and made a slightly modified copy
> of it. It looks like GIT gets confused on which one is the renaming
> and which one is the copy, and doesn't favour the 100% identical one
> to be chosen as the renaming.
> 
> Not a big deal, but maybe git could be more clever here.
> 
> % git commit -m "Split into flash and ram alternatives." 
> [stm32-sk 601462c] Split into flash and ram alternatives.
>  3 files changed, 3 insertions(+), 2 deletions(-)
>  copy Demo/CORTEX_STM32SK_GCC/{stm32f103r8t6.ld => stm32f103r8t6_flash.ld} (100%)
>  rename Demo/CORTEX_STM32SK_GCC/{stm32f103r8t6.ld => stm32f103r8t6_ram.ld} (98%)
> 

There isn't that much more to be clever about, really. One is a rename+edit,
the other is a copy. The other way around would have been copy+edit + rename
which isn't necessarily an improvement.

Looking at how git internally[1] does things and remembering the meanings of
"copy" and "rename" though, it makes perfect sense to leave it as-is.

[1].
In git, the content is part of the (object) name, so changing the content
makes it closer to a rename than a copy, while changing the location always
makes it a copy, although sometimes coupled with a delete.

-- 
Andreas Ericsson                   [email-masked]
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.