If you have to rebase a pre-released branch with upstream/master there is potential for the package.json's version to be set to what was in master instead of what your pre-release version was at. So you could run into the issue of re-creating an already existing tag. For example:
- current master version: 1.0.0
- pre-release a minor change so you get: 1.1.0-release.0
- master gets updated: 1.0.1, and you want to rebase that work into your pre-release
- Rebase your branch but remove your existing pre-release version in your local branch so your package.json version is set to 1.0.1
- Try to pre-release a minor change again to pull in the upstream/master changes but your local package.json is set to 1.0.1 instead of your previous pre-release version, so when you pre-release again it tries to generate then 1.1.0-release.0 tag again.
Potential Fix:
Have a check before you attempt to make this tag to see if it already exists and if it does recommend bumping the tag to one higher than the latest version of that tag. So: 1.1.0-release.0 would go to 1.1.0-release.1 instead.
If you have to rebase a pre-released branch with upstream/master there is potential for the package.json's version to be set to what was in master instead of what your pre-release version was at. So you could run into the issue of re-creating an already existing tag. For example:
Potential Fix:
Have a check before you attempt to make this tag to see if it already exists and if it does recommend bumping the tag to one higher than the latest version of that tag. So: 1.1.0-release.0 would go to 1.1.0-release.1 instead.