1
0
mirror of https://github.com/actions/checkout.git synced 2026-03-04 08:41:01 +08:00

Compare commits

...

4 Commits

Author SHA1 Message Date
Jake Bailey
13d56e6b9b
Merge 3c3e99848b into 6b42224f41 2024-10-03 10:09:41 -07:00
Joel Ambass
6b42224f41
Add workflow file for publishing releases to immutable action package (#1919)
This workflow file publishes new action releases to the immutable action package of the same name as this repo.

This is part of the Immutable Actions project which is not yet fully released to the public. First party actions like this one are part of our initial testing of this feature.
2024-10-03 11:03:35 +02:00
Orhan Toy
de5a000abf
Check out other refs/* by commit if provided, fall back to ref (#1924) 2024-10-01 20:24:28 -04:00
Jake Bailey
3c3e99848b Document that filter doesn't override fetch-depth 2023-10-05 09:04:25 -07:00
6 changed files with 39 additions and 6 deletions

View File

@ -0,0 +1,20 @@
name: 'Publish Immutable Action Version'
on:
release:
types: [published]
jobs:
publish:
runs-on: ubuntu-latest
permissions:
contents: read
id-token: write
packages: write
steps:
- name: Checking out
uses: actions/checkout@v4
- name: Publish
id: publish
uses: actions/publish-immutable-action@0.0.3

View File

@ -79,6 +79,8 @@ Please refer to the [release page](https://github.com/actions/checkout/releases/
clean: ''
# Partially clone against a given filter. Overrides sparse-checkout if set.
# Note that when a filter is provided, fetch-depth is still respected; you
# may want to specify `fetch-depth: 0` to ensure the full history is fetched.
# Default: null
filter: ''

View File

@ -77,6 +77,16 @@ describe('ref-helper tests', () => {
expect(checkoutInfo.startPoint).toBeFalsy()
})
it('getCheckoutInfo refs/ without commit', async () => {
const checkoutInfo = await refHelper.getCheckoutInfo(
git,
'refs/non-standard-ref',
''
)
expect(checkoutInfo.ref).toBe('refs/non-standard-ref')
expect(checkoutInfo.startPoint).toBeFalsy()
})
it('getCheckoutInfo unqualified branch only', async () => {
git.branchExists = jest.fn(async (remote: boolean, pattern: string) => {
return true

View File

@ -59,8 +59,9 @@ inputs:
default: true
filter:
description: >
Partially clone against a given filter.
Overrides sparse-checkout if set.
Partially clone against a given filter. Overrides sparse-checkout if set.
Note that when a filter is provided, fetch-depth is still respected; you
may want to specify `fetch-depth: 0` to ensure the full history is fetched.
default: null
sparse-checkout:
description: >

4
dist/index.js vendored
View File

@ -2005,8 +2005,8 @@ function getCheckoutInfo(git, ref, commit) {
result.ref = ref;
}
// refs/
else if (upperRef.startsWith('REFS/') && commit) {
result.ref = commit;
else if (upperRef.startsWith('REFS/')) {
result.ref = commit ? commit : ref;
}
// Unqualified ref, check for a matching branch or tag
else {

View File

@ -46,8 +46,8 @@ export async function getCheckoutInfo(
result.ref = ref
}
// refs/
else if (upperRef.startsWith('REFS/') && commit) {
result.ref = commit
else if (upperRef.startsWith('REFS/')) {
result.ref = commit ? commit : ref
}
// Unqualified ref, check for a matching branch or tag
else {