docs: troubleshooting
This commit is contained in:
parent
d6c398fd8b
commit
75778bcea4
@ -1,34 +1,31 @@
|
|||||||
# Troubleshooting
|
# Troubleshooting
|
||||||
|
|
||||||
### ENOTINHISTORY Commit not in history
|
## ENOTINHISTORY Commit not in history
|
||||||
|
|
||||||
```
|
This error happens when the commit associated with the last release cannot be found in the branch history.
|
||||||
semantic-release ERR! commits The commit the last release of this package was derived from is not in the direct history of the "master" branch.
|
|
||||||
semantic-release ERR! commits This means semantic-release can not extract the commits between now and then.
|
Multiple situation can cause this issue:
|
||||||
semantic-release ERR! commits This is usually caused by force pushing, releasing from an unrelated branch, or using an already existing package name.
|
- The package name configured in your `package.json` already exists and **semantic-release** obtains the last release of that package, which is unrelated to yours
|
||||||
semantic-release ERR! commits You can recover from this error by publishing manually or restoring the commit "123".
|
- The commit history has been rewritten since the last release (with `git rebase` and `git push -f`)
|
||||||
semantic-release ERR! pre Failed to determine new version.
|
|
||||||
semantic-release ERR! pre ENOTINHISTORY Commit not in history
|
If the package name configured in your `package.json` already exits, you should change it, and commit the `package.json`. Then **semantic-release** will proceed normally and make the initial release.
|
||||||
|
|
||||||
|
If you can identify the commit in your branch history that should be associated with the release version mentioned in the error message you can recover by tagging this commit:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
$ git tag -f v<version of the last release> <commit sha1 corresponding to last release>
|
||||||
|
$ git push -f --tags origin <your release branch>
|
||||||
```
|
```
|
||||||
|
|
||||||
To restore semantic-release, follow these steps:
|
## ENOGITHEAD There is no commit associated with last release
|
||||||
|
|
||||||
```
|
This error happens when there is no commit associated with the last release that can be found in the package metadata on the npm registry.
|
||||||
git pull
|
|
||||||
git reset --hard origin/master
|
This usually happen when the last release has been made without access to the git repository informations.
|
||||||
npm version x.y.z # check your current version and set this based on semver rules manually
|
|
||||||
|
You can recover from that issue by identifying the commit in your branch history that should have been associated with the release version mentioned in the error message and tagging this commit:
|
||||||
# if you have a PR workflow, create a new branch, otherwise commit to master
|
|
||||||
|
```bash
|
||||||
git checkout -B chore/release
|
$ git tag -f v<version of the last release> <commit sha1 corresponding to last release>
|
||||||
git commit -am 'chore: release'
|
$ git push -f --tags origin <your release branch>
|
||||||
git push
|
|
||||||
|
|
||||||
# merge (not squash-merge) on github (this is important before running git push). This is only required when you work with branches
|
|
||||||
git checkout master
|
|
||||||
|
|
||||||
# definitely required
|
|
||||||
git pull
|
|
||||||
git push --tags
|
|
||||||
npm publish
|
|
||||||
```
|
```
|
||||||
|
Loading…
x
Reference in New Issue
Block a user