mirror of
https://github.com/actions/checkout.git
synced 2026-06-14 16:53:47 +08:00
Merge 0548471950 into 1af3b93b68
This commit is contained in:
@@ -285,8 +285,12 @@ class GitCommandManager {
|
||||
}
|
||||
): Promise<void> {
|
||||
const args = ['-c', 'protocol.version=2', 'fetch']
|
||||
if (!refSpec.some(x => x === refHelper.tagsRefSpec) && !options.fetchTags) {
|
||||
args.push('--no-tags')
|
||||
const hasTagsRefSpec = refSpec.some(x => x === refHelper.tagsRefSpec)
|
||||
const needsSeparateTagFetch = this.gitVersion.toString().startsWith('2.48') && options.fetchTags && !hasTagsRefSpec
|
||||
|
||||
if (!hasTagsRefSpec) {
|
||||
// For git 2.48, skip --tags here if we need separate fetch
|
||||
args.push(needsSeparateTagFetch || !options.fetchTags ? '--no-tags' : '--tags')
|
||||
}
|
||||
|
||||
args.push('--prune', '--no-recurse-submodules')
|
||||
@@ -317,6 +321,19 @@ class GitCommandManager {
|
||||
await retryHelper.execute(async () => {
|
||||
await that.execGit(args)
|
||||
})
|
||||
|
||||
// Separate tag fetch for git 2.48
|
||||
if (needsSeparateTagFetch) {
|
||||
const tagArgs = ['-c', 'protocol.version=2', 'fetch', '--tags', '--prune']
|
||||
if (options.showProgress) {
|
||||
tagArgs.push('--progress')
|
||||
}
|
||||
tagArgs.push('origin')
|
||||
|
||||
await retryHelper.execute(async () => {
|
||||
await that.execGit(tagArgs)
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
async getDefaultBranch(repositoryUrl: string): Promise<string> {
|
||||
|
||||
Reference in New Issue
Block a user