If you don't need the commit information, then you could just do a soft reset. Then files remain as they were and when you commit, this commit will be on top of the commit you did reset to.
To find the commit to reset to:
git merge-base HEAD BRANCH_YOU_BRANCHED_FROM
Then
git reset --soft COMMIT_HASH
Then re-craft the commit, perhaps:
git commit -am 'This is the new re-created one commit'
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…