Note that there are some explanatory texts on larger screens.

plurals
  1. PO
    primarykey
    data
    text
    <p>I have exactly the same issue that you are facing. Even though I can give you no answer, I believe you can read <a href="https://web.archive.org/web/20160206150253/http://article.gmane.org/gmane.comp.version-control.git/217" rel="noreferrer">this email</a> Linus wrote back in 2005, it is very pertinent and might give you a hint about how to handle the problem:</p> <blockquote> <p>&hellip;I'm claiming that any SCM that tries to track renames is fundamentally broken unless it does so for internal reasons (ie to allow efficient deltas), exactly because renames do not matter. They don't help you, and they aren't what you were interested in <em>anyway</em>.</p> <p>What matters is finding "where did this come from", and the git architecture does that very well indeed - much better than anything else out there. &hellip;</p> </blockquote> <p>I found it referenced by <a href="http://gitster.livejournal.com/35628.html" rel="noreferrer">this blog post,</a> which could also be useful for you to find a viable solution:</p> <blockquote> <p>In the message, Linus outlined how an ideal content tracking system may let you find how a block of code came into the current shape. You'd start from the current block of code in a file, go back in the history to find the commit that changed the file. Then you inspect the change of the commit to see if the block of code you are interested in is modified by it, as a commit that changes the file may not touch the block of code you are interested in, but only some other parts of the file.</p> <p>When you find that before the commit the block of code did not exist in the file, you inspect the commit deeper. You may find that it is one of the many possible situations, including:</p> <ol> <li>The commit truly introduced the block of code. The author of the commit was the inventor of that cool feature you were hunting its origin for (or the guilty party who introduced the bug); or</li> <li>The block of code did not exist in the file, but five identical copies of it existed in different files, all of which disappeared after the commit. The author of the commit refactored duplicated code by introducing a single helper function; or</li> <li>(as a special case) Before the commit, the file that currently contains the block of the code you are interested in itself did not exist, but another file with nearly identical contents did exist, and the block of the code you are interested in, together with all the other contents in the file existed back then, did exist in that other file. It went away after the commit. The author of the commit renamed the file while giving it a minor modification.</li> </ol> <p>In git, Linus's ultimate content tracking tool does not yet exist in a fully automated fashion. But most of the important ingredients are available already.</p> </blockquote> <p>Please, keep us posted about your progress on this.</p>
    singulars
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. VO
      singulars
      1. This table or related slice is empty.
    2. VO
      singulars
      1. This table or related slice is empty.
    3. VO
      singulars
      1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload