Detection of relocations within a file

2 messages, 2 authors, 2016-06-15 · open the first message on its own page

Detection of relocations within a file

From: Tim Mazid <hidden>
Date: 2016-06-15 22:49:24

Hi git-list,

I was just wondering if git can/does detect relocations of sections of code/text within a file.

For example, moving a function from the top of a file to the end.

If git does not currently do this, would it be a good/bad idea, and how hard would it be to implement?

Regards,
Tim.
 		 	   		  

Re: Detection of relocations within a file

From: Jonathan Nieder <hidden>
Date: 2016-06-15 22:49:24

Hi Tim,

Tim Mazid wrote:
I was just wondering if git can/does detect relocations of sections of code/text within a file.

For example, moving a function from the top of a file to the end.
Depends what you are trying to do.

1. I am mystified by some piece of code, and I want to know where
it originated.  Code movements is uninteresting to me (so grepping
through a patch won't do it).  The command

 $ git log -S'const char git_more_info_string[] =
	"See 'git help COMMAND' for more information on a specific command.";' \
      -- git.c

tells the originating commit pretty quickly.

2. I am mystified not by some particular piece of code but by an
entire file.  The command

 $ git gui blame -- git.c

works okay.

3. The origins of some piece of code make enough sense, but the code
changes since then are a mystery to investigate.  The command

 $ git log -L '/int main(/,/}/' git.c

with git from the "next" branch can help.

4. I want a simple, easy-to-review patch representing a code movement.
No one I know of has worked on this, and if you have ideas for it,
that would be very neat.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help