title: git duplicate parent causes half the history to to disappear
body: <p>I ran a <code>git filter-branch</code> to rename some authors in my git repository and I get:</p>
  
  <pre><code>$ git log --oneline | wc -l
  665
  $ ./git-rename-author.rb "First Last" new-email@email.com old-email@email.com
  Rewrite 453a72b4f690620c04fce80a0aa237b9dee7038f (653/665)error: duplicate parent f61ea265c9069723f58557c55d3efae450ab2bd0 ignored
  Rewrite 566c89fd59cf7e5c2992ee11adbf876343dc4a85 (665/665)
  $ git log --oneline | wc -l
  339
  </code></pre>
  
  <p>So whole I start off with 665 commits, I end with 339.</p>
  
  <p>Looking at the <a href="https://stackoverflow.com/a/7501703/238292">git - duplicate parent</a> answer, it seems <code>git filter-branch</code> should resolve the duplication itself. Is that what the resolution is? Are there 326 duplicate commits?</p>
  
  <p>Thank you in advance.</p>
  
  <p><strong>Edit</strong>: here's the <code>git filter-branch</code> script I run. It's a simple Ruby script to rename multiple email addresses into one user.</p>
  
  <pre><code>#!/usr/bin/env ruby
  
  ARGV[2].split(',').each do |old_email|
    puts "Renaming #{old_email} to #{ARGV[0]} &lt;#{ARGV[1]}&gt;"
  
    env_filter = &lt;&lt;-EOS
    '
    an="$GIT_AUTHOR_NAME"
    am="$GIT_AUTHOR_EMAIL"
    cn="$GIT_COMMITTER_NAME"
    cm="$GIT_COMMITTER_EMAIL"
  
    if [ "$GIT_AUTHOR_EMAIL" = "#{old_email}" ]
    then
        an="#{ARGV[0]}"
        am="#{ARGV[1]}"
    fi
    if [ "$GIT_COMMITTER_EMAIL" = "#{old_email}" ]
    then
        cn="#{ARGV[0]}"
        cm="#{ARGV[1]}"
    fi
  
    export GIT_AUTHOR_NAME="$an"
    export GIT_AUTHOR_EMAIL="$am"
    export GIT_COMMITTER_NAME="$cn"
    export GIT_COMMITTER_EMAIL="$cm"
    '
    EOS
  
    system "git filter-branch -f --env-filter #{env_filter}"
  end
  </code></pre>