mirror of
https://code.forgejo.org/actions/checkout.git
synced 2026-01-11 06:37:46 -05:00
This PR fixes several issues with tag handling in the checkout action: 1. fetch-tags: true now works (fixes #1471) - Tags refspec is now included in getRefSpec() when fetchTags=true - Previously tags were only fetched during a separate fetch that was overwritten by the main fetch 2. Tag checkout preserves annotations (fixes #290) - Tags are fetched via refspec (+refs/tags/*:refs/tags/*) instead of --tags flag - This fetches the actual tag objects, preserving annotations 3. Tag checkout with fetch-tags: true no longer fails (fixes #1467) - When checking out a tag with fetchTags=true, only the wildcard refspec is used (specific tag refspec is redundant) Changes: - src/ref-helper.ts: getRefSpec() now accepts fetchTags parameter and prepends tags refspec when true - src/git-command-manager.ts: fetch() simplified to always use --no-tags, tags are fetched explicitly via refspec - src/git-source-provider.ts: passes fetchTags to getRefSpec() - Added E2E test for fetch-tags option Related #1471, #1467, #290 |
||
|---|---|---|
| .. | ||
| git-auth-helper.test.ts | ||
| git-command-manager.test.ts | ||
| git-directory-helper.test.ts | ||
| git-version.test.ts | ||
| input-helper.test.ts | ||
| modify-work-tree.sh | ||
| override-git-version.cmd | ||
| override-git-version.sh | ||
| ref-helper.test.ts | ||
| retry-helper.test.ts | ||
| url-helper.test.ts | ||
| verify-basic.sh | ||
| verify-clean.sh | ||
| verify-fetch-filter.sh | ||
| verify-fetch-tags.sh | ||
| verify-lfs.sh | ||
| verify-no-unstaged-changes.sh | ||
| verify-side-by-side.sh | ||
| verify-sparse-checkout-non-cone-mode.sh | ||
| verify-sparse-checkout.sh | ||
| verify-submodules-false.sh | ||
| verify-submodules-recursive.sh | ||
| verify-submodules-true.sh | ||
| verify-worktree.sh | ||