checkout/__test__
eric sciple dc12339a98 Fix tag handling: preserve annotations and explicit fetch-tags
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
2026-01-09 01:45:54 +00:00
..
git-auth-helper.test.ts Persist creds to a separate file (#2286) 2025-11-03 13:08:38 -06:00
git-command-manager.test.ts Fix tag handling: preserve annotations and explicit fetch-tags 2026-01-09 01:45:54 +00:00
git-directory-helper.test.ts Persist creds to a separate file (#2286) 2025-11-03 13:08:38 -06:00
git-version.test.ts Check git version before attempting to disable sparse-checkout (#1656) 2024-03-14 15:40:14 +01:00
input-helper.test.ts Add support for partial checkout filters (#1396) 2023-09-22 13:30:36 -04:00
modify-work-tree.sh Convert checkout to a regular action (#70) 2019-12-03 10:28:59 -05:00
override-git-version.cmd Swap to Environment Files (#360) 2020-09-30 11:41:09 -04:00
override-git-version.sh Swap to Environment Files (#360) 2020-09-30 11:41:09 -04:00
ref-helper.test.ts Fix tag handling: preserve annotations and explicit fetch-tags 2026-01-09 01:45:54 +00:00
retry-helper.test.ts Update NPM dependencies (#1703) 2024-04-24 12:04:10 -04:00
url-helper.test.ts Expand unit test coverage (#1946) 2024-10-23 15:59:08 +02:00
verify-basic.sh Disable extensions.worktreeConfig when disabling sparse-checkout (#1692) 2024-04-23 22:07:43 +02:00
verify-clean.sh Convert checkout to a regular action (#70) 2019-12-03 10:28:59 -05:00
verify-fetch-filter.sh Add support for partial checkout filters (#1396) 2023-09-22 13:30:36 -04:00
verify-fetch-tags.sh Fix tag handling: preserve annotations and explicit fetch-tags 2026-01-09 01:45:54 +00:00
verify-lfs.sh Convert checkout to a regular action (#70) 2019-12-03 10:28:59 -05:00
verify-no-unstaged-changes.sh update troubleshooting instructions to include 'npm run format' 2020-05-31 17:48:51 -04:00
verify-side-by-side.sh Convert checkout to a regular action (#70) 2019-12-03 10:28:59 -05:00
verify-sparse-checkout-non-cone-mode.sh Mark test scripts with Bash'isms to be run via Bash (#1377) 2023-06-09 11:05:29 -04:00
verify-sparse-checkout.sh Mark test scripts with Bash'isms to be run via Bash (#1377) 2023-06-09 11:05:29 -04:00
verify-submodules-false.sh add support for submodules (#173) 2020-03-05 14:21:59 -05:00
verify-submodules-recursive.sh Persist creds to a separate file (#2286) 2025-11-03 13:08:38 -06:00
verify-submodules-true.sh Persist creds to a separate file (#2286) 2025-11-03 13:08:38 -06:00
verify-worktree.sh Add worktree support for persist-credentials includeIf (#2327) 2025-12-01 19:53:23 -06:00