title: Merging after refactoring - detecting moved file parts
body: <p>I have two branches with the structure:</p>
  
  <pre><code>---(commit 1) ----- (commit 2, refactoring) ----(CONFLICT) 
          \                                      /
           \                                    /
            -----(commit 3, modifying) --------/
  </code></pre>
  
  <p>In the <code>commit 1</code> I have a file <code>text.txt</code>:</p>
  
  <pre><code>Part 1:
    line 1
    line 2
    line 3
  Part 2:
    line 4
    line 5
    line 6
  </code></pre>
  
  <p>In <code>commit 2</code> I extract "part 2" of the <code>text.txt</code> into the <code>part2.txt</code>, so I get:</p>
  
  <ul>
  <li><p><code>text.txt</code>:</p>
  
  <pre><code>Part 1:
    line 1
    line 2
    line 3
  </code></pre></li>
  <li><p><code>part2.txt</code>:</p>
  
  <pre><code>Part 2:
    line 4
    line 5
    line 6
  </code></pre></li>
  </ul>
  
  <p>In <code>commit 3</code> I slightly modify both parts of <code>text.txt</code>:</p>
  
  <pre><code>Part 1:
    line 1
    line 2a
    line 3
  Part 2:
    line 4
    line 5b
    line 6
  </code></pre>
  
  <p>Merging two branches I expect git to be smart enough and put <code>line 2a</code> into <code>text.txt</code> and <code>line 5b</code> into <code>part2.txt</code>. Unfortunately this doesn't happen.</p>
  
  <p>My expectations are based on the fact, that <code>git gui blame part2.txt</code> detects origin of the lines correctly showing <code>text.txt</code>.</p>
  
  <p>My questions are:</p>
  
  <ul>
  <li>Why doesn't it work out of the box?</li>
  <li>Is there some workaround known?</li>
  </ul>