3
0
Fork 0
mirror of https://code.forgejo.org/actions/checkout.git synced 2026-07-28 06:32:54 +00:00
This commit is contained in:
Sam Lijin 2026-07-24 17:46:59 -07:00 committed by GitHub
commit 48c48811c5
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
3 changed files with 21 additions and 0 deletions

9
dist/index.js vendored
View file

@ -35816,6 +35816,9 @@ class GitCommandManager {
const output = await this.execGit(['rev-parse', '--symbolic-full-name', '--verify', '--quiet', 'HEAD'], true);
return !output.stdout.trim().startsWith('refs/heads/');
}
async lfsCheckout() {
await this.execGit(['lfs', 'checkout']);
}
async lfsFetch(ref) {
const args = ['lfs', 'fetch', 'origin', ref];
const that = this;
@ -41879,6 +41882,12 @@ async function getSource(settings) {
startGroup('Checking out the ref');
await git.checkout(checkoutInfo.ref, checkoutInfo.startPoint);
endGroup();
// LFS checkout
if (settings.lfs && !settings.sparseCheckout) {
startGroup('Checking out LFS objects');
await git.lfsCheckout();
endGroup();
}
// Submodules
if (settings.submodules) {
// Temporarily override global config

View file

@ -45,6 +45,7 @@ export interface IGitCommandManager {
getWorkingDirectory(): string
init(objectFormat?: string): Promise<void>
isDetached(): Promise<boolean>
lfsCheckout(): Promise<void>
lfsFetch(ref: string): Promise<void>
lfsInstall(): Promise<void>
log1(format?: string): Promise<string>
@ -383,6 +384,10 @@ class GitCommandManager {
return !output.stdout.trim().startsWith('refs/heads/')
}
async lfsCheckout(): Promise<void> {
await this.execGit(['lfs', 'checkout'])
}
async lfsFetch(ref: string): Promise<void> {
const args = ['lfs', 'fetch', 'origin', ref]

View file

@ -271,6 +271,13 @@ export async function getSource(settings: IGitSourceSettings): Promise<void> {
await git.checkout(checkoutInfo.ref, checkoutInfo.startPoint)
core.endGroup()
// LFS checkout
if (settings.lfs && !settings.sparseCheckout) {
core.startGroup('Checking out LFS objects')
await git.lfsCheckout()
core.endGroup()
}
// Submodules
if (settings.submodules) {
// Temporarily override global config