>Any other value results in a new tag

Can this handle the following use case?

rewriter = x => { return x == "v0.0.1" ? "v0.0.1rc" : x }

*initial:*
```
refs/tags/my-tag -> TagA (name: test) -> TagB (name: v0.0.1) -> TagC (name: another) -> GitObject (either a Blob, Tree or a Commit)
```
*expected output:*
```
refs/original/tags/my-tag -> TagA (name: test) -> TagB (name: v0.0.1rc) -> TagC (name: another) -> GitObject (either a Blob, Tree or a Commit)
```