-
Notifications
You must be signed in to change notification settings - Fork 1.8k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
bad revision 'master' when using Lerna #118
Comments
What happens if you use
As far as I can tell, reading the source of this action, the only explicit symbolic ref available in a branch build will be the branch itself, not the default branch (usually |
I did manage to get this working by doing a few things (which might not all be necessary):
That seems to do the trick so this issue can probably be closed, however it would be nice if this were in the docs. I'd be happy to submit a PR if this is something others think should be included. |
I had a similar issue with fetching I agree that it should be in the docs. I'd expect something like "Fetch master branch" item right after "Fetch all branches". |
Is the issue because fetch depth is 1 by default? I'm updating to docs to make this more clear. |
@ericsciple |
@dmpetrov thanks. Sorry I'm missing something. Excluding lerna from the picture, does anything require The ref inputs Here is my workflow: on: [push]
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
with:
ref: master # works
- continue-on-error: true
run: "rm -rf * ; rm -rf .*"
- uses: actions/checkout@v2
with:
ref: refs/heads/master # works
- continue-on-error: true
run: "rm -rf * ; rm -rf .*"
- uses: actions/checkout@v2
with:
ref: origin/master # does not work |
@ericsciple I needed to get the last sha in master
Even with this "full git history" I'm unable to run the command
If I specify |
@dmpetrov this works for me: on: [push]
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
with:
ref: master
- run: |
git log -n 1 master --pretty=format:%H
In your case it appears you don't have a local branch |
If this is running on a branch/PR you can't really set |
@iansu is right. |
Closing this issue now. I updated the docs to mention in the readme summary that only a single commit is fetched by default (with fetch depth 0) |
I think mentioning that in the docs is helpful but it doesn't really solve the problem. You could add an option to the checkout action to always fetch It would also be nice to add an example in the documentation that shows how to use Lerna with GitHub Actions. It's a very commonly used tool with monorepos. I'd be happy to help with any of this work. |
So for everyone who lands here via google. My workflow looks like: # example lerna task
lerna run test --since origin/master - uses: actions/checkout@v2
- run: |
git fetch --no-tags --prune --depth=1 origin +refs/heads/master:refs/remotes/origin/master I only need the
|
This worked too: - name: Checkout Repository
uses: actions/checkout@v2
with:
fetch-depth: 0
...
...
...
- name: Lint
run: npx lerna run lint --since origin/master This looked cleaner but #118 (comment) looks more resource efficient. |
|
recommended here actions/checkout#118
I am trying to use the
lerna run build --since master
command in an action to only build packages that have changed in the branch. Lerna is running this git command to do that:git diff --name-only master -- packages/<package name>
. That results in this error:lerna ERR! fatal: bad revision 'master'
.I've tried many different options and commands from the README in this project but nothing seems to work. I've set the fetch depth to 0 to fetch all history and I've tried manually specifying a git command like so:
Nothing seems to make master available for Lerna to compare against. Any help would be appreciated.
The text was updated successfully, but these errors were encountered: