This is different than my experience of Tower and Tower 2.
I frequently pick through dozens of lines of code for a granular commit history, sometimes backing up a commit, saving a commit as a patch, (then) amending some lines to a previous commit, staging/unstaging non-consecutive additions and deletions, etc. and I've not experienced problems.
Renaming repos is straightforward but doing so does not rename the directory in the filesystem. It only renames it in the Tower UI.
To rename the repo root directory, one should copy the origin root directory naming it to the new name and then run
git init --bare name_of_directory
to create a new repo.
The only trouble I've experienced is deleting branches and tags from Github. Not sure if it's Github or Tower, but deleting those items and then recreating them often yields an error that the item still exists.
(In my defense, the process established at work requires a deploy of a tag to STG once every 2 weeks, but the tag must be deployed to STG every week, leading to a situation where the STG tag must be deleted and recreated. Come to think of it, I'm going to suggest we change our process.)
I'm not affiliated with Tower except as a satisfied user.
EDIT: grammar, formatting, readability.