Esegui pipeline localmente
GitTree prepara l'esatto comando act o gitlab-ci-local per un file di flusso di lavoro o un lavoro e lo digita in un nuovo terminale affinché tu possa eseguirlo. I lavori vengono eseguiti in Docker contenitori sul tuo computer, prima dell'invio. Le pipeline locali fanno parte del piano gratuito e non necessitano di un account di hosting.
Funziona in GitTree Gratuito: tutte le funzionalità Git locali, senza bisogno di un account.
In questa pagina
Prima di iniziare
- Docker, in esecuzione: Docker Desktop, OrbStack, Colima o Docker Engine. Entrambi i corridori iniziano ogni lavoro in un container.
- Il runner per il tuo file: act per GitHub Actions (
.github/workflows/*.yml), gitlab-ci-local per GitLab CI (.gitlab-ci.yml). Installalo all'esterno del repository, in una cartella su PATH. - Un repository affidabile (repository trust): un'esecuzione locale esegue il codice del repository.
- Una shell terminale supportata: bash, zsh, sh o fish su macOS; PowerShell su Windows; bash, zsh, sh o fish su Linux.
Dove trovarlo
- Il pulsante CI/CD nella barra degli strumenti: senza un account collegato o Pro, la visualizzazione si apre su Local pipelines.
- La sezione TOOLS del pannello di sinistra: Prepare local pipeline.
- Tools nella barra degli strumenti (accanto a Terminal) o nel menu della scheda repository: Prepare local pipeline…, anche nella tavolozza dei comandi o con
Alt+Shift+L.
| Azione | macOS | Windows e Linux |
|---|---|---|
| La tavolozza dei comandi, quindi Prepare local pipeline… | ⌘⇧P | Ctrl+Shift+P |
| Show CI/CD | ⌥P | Alt+P |
Passi
Controlla ciò di cui hai bisogno
Apri CI/CD. Local pipelines elenca What you need: Docker, act e gitlab-ci-local con Found o Not found e dove è stato trovato ciascuno, l'attendibilità del repository e la shell del terminale. Un programma mancante mostra come installarlo; installarlo, quindi premere Check again. Ask Nour to Set Up the Local Runner fa parte di Pro, che al momento tutti hanno a disposizione gratuitamente. La preparazione e l'esecuzione del comando localmente no.

Le pipeline locali sono contrassegnate come gratuite. Le corse ospitate sopra di esse necessitano comunque di un account connesso.GitTree interfaccia con un repository dimostrativo. Aggiungi un file pipeline o usa il tuo
Pipeline files in this repository elenca ciascun file con Ready to run o il motivo per cui non può essere eseguito. Senza ancora alcun file, Add GitHub Actions sample scrive
.github/workflows/gittree-local.ymle Add GitLab CI sample scrive.gitlab-ci.yml, ciascuno con due lavori commentati. GitTree non sovrascrive mai un file esistente. Il file si apre nell'editor: inserisci i comandi di build e test al suo interno.Preparare il comando
Premi Run Locally…. In Prepare local pipeline, scegli Pipeline config, a Job o Runner default jobs e Terminal shell, quindi Prepare command. Non funziona ancora nulla.
Eseguilo nel terminale
Leggi il Prepared command, quindi il Type in new terminal. GitTree lo digita in un nuovo terminale e non preme mai Invio: rivedilo e premi Invio tu stesso. L'output del lavoro viene visualizzato nel terminale.
Risultato atteso
Il runner estrae l'immagine del lavoro la prima volta, quindi esegue ogni passaggio in un contenitore e stampa il risultato nel terminale. I file del tuo repository vengono utilizzati così come sono su disco, confermati o meno.
Installa Docker e i corridori
| Programma | macOS | Windows | Linux |
|---|---|---|---|
| Docker | Docker Desktop, OrbStack o Colima | Docker Desktop | Docker Engine o Docker Desktop |
| agire (GitHub Actions) | brew install act | winget install nektos.act | Lo script di installazione su nektosact.com |
| gitlab-ci-local (GitLab CI) | npm install -g gitlab-ci-local | Il file .exe delle sue versioni GitHub, in una cartella su PATH | npm install -g gitlab-ci-local |
gitlab-ci-local richiede Node.js 18 o versione successiva se installato con npm. GitTree cerca solo i programmi su PATH; non li esegue mai per controllare, quindi non può dire se il motore Docker è avviato.
I file di esempio
L'esempio GitHub Actions esegue un lavoro build, quindi un lavoro test su ubuntu-latest. Alla prima esecuzione l'atto chiede quale immagine del corridore utilizzare; Medium è adatto alla maggior parte dei progetti. L'esempio GitLab CI esegue gli stessi due lavori in alpine contenitori. Sostituisci le righe echo con i tuoi comandi, quindi conferma il file quando è pronto. Se il repository è su GitHub o GitLab, anche quell'host esegue il file.
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Build
run: npm ci && npm run build
test:
runs-on: ubuntu-latest
needs: build
steps:
- uses: actions/checkout@v4
- name: Test
run: npm testBitbucket Pipelines e Azure Pipelines
Non esiste un runner locale supportato per bitbucket-pipelines.yml o azure-pipelines.yml, quindi questi file mostrano No local runner. Per eseguire gli stessi passaggi sul tuo computer, aggiungi l'esempio GitHub Actions o GitLab CI e copiaci i comandi. La pipeline ospitata continua a essere eseguita dal proprio file.
In che modo una corsa locale differisce dal tuo host
- I segreti e le variabili impostati sull'host non sono disponibili; passa tu stesso quelli necessari per un lavoro al corridore.
- act esegue lavori attivati tramite push per impostazione predefinita. Scegli un Job per eseguirne uno indipendentemente dal suo trigger.
- Include, modelli e flussi di lavoro riutilizzabili non vengono risolti quando GitTree elenca i lavori; il corridore li risolve quando corre.
- I contenitori possono raggiungere la tua rete e utilizzare le credenziali fornite loro.
Se qualcosa va storto
"Nessun corridore nativo sicuro è stato trovato su PATH. Installalo all'esterno del repository, quindi aggiorna. "
Installa act o gitlab-ci-local in una cartella sul PERCORSO che non si trova all'interno del repository, quindi premi Check again o Refresh. Il giorno macOS, esci e riapri GitTree se hai cambiato PATH nel profilo della tua shell.
"La configurazione di questo provider non ha un runner locale supportato."
Il file è una pipeline Bitbucket o Azure. Aggiungi un campione GitHub Actions o GitLab CI e copia i passaggi al suo interno.
"Affidati a questo repository prima di preparare un comando della pipeline locale."
Affidare prima il repository (repository trust), quindi preparare nuovamente il comando.
Il terminale dice che non può connettersi al demone Docker.
Avvia Docker Desktop, OrbStack, Colima o il servizio Docker, attendi finché non viene eseguito, quindi premi nuovamente Invio sul comando.
Domande
Le pipeline locali necessitano di GitTree Pro o di un account di hosting?
No. Le pipeline locali fanno parte del piano gratuito e leggono solo i file del tuo repository. Le esecuzioni, le ripetizioni e le approvazioni CI/CD ospitate fanno parte di Pro.
GitTree esegue la pipeline per me?
No. GitTree prepara il comando e lo digita in un terminale; premi Invio. Niente viene eseguito prima di te.