Объединение двух репозиториев git для получения линейной истории

У меня есть два репозитория git и много не отслеживаемых изменений между ними:

   ftp -->            C-- (untracked changes) --D
                     /                           \
   git        A--B--C <-- old/master              \
                                                   \
                                                    \
                                  new/master -->     D--E--F 

Как я могу объединить старый репозиторий в новый репозиторий, чтобы иметь линейную историю как

A--B--C--D--E--F

РЕДАКТИРОВАТЬ:

вдохновленКак я могу объединить репозитории Git в линейную историю?

Я сделал:

git clone url://new new
cd new/
git remote add old url://old
git fetch old
git reset --hard origin/master
git filter-branch --parent-filter 'sed "s_^\$_-p old/master_"' HEAD
git push origin master

Единственная проблема в том, что каждый коммит из new / master был удвоен (из-за смены родителя, я думаю), поэтому я сейчас (M - коммит слияния)

         D---E---F--         
                    \
A--B--C--D'--E'--F'--M 

Как я могу легко удалить ненужные коммиты (D - F и, возможно, M)?

Ответы на вопрос(4)

Ваш ответ на вопрос