Is there a way to retain the original author when editing the contents of a commit?
Your best bet is to use
git rebase --interactive on the command line and
edit a specific commit, edit your files, and
git commit --amend. If you haven’t used rebase before, I would advise you to read up on it and then experiment in a test repository to learn how it works.
I am extremely familiar with interactive rebasing. Our workflow requires holding onto the original author when mainline commits are “back ported” into older releases. Often these backports require some rework so it’s interactive rebase time. Another workflow is pulling forward custom work to new releases, again original author has to be maintained. At times the custom commits are still being worked on for one release while it’s being pulled into another release.
The git workflows are kind of cast in stone, and would be very difficult to change (several different external organizations would all have to agree)