Git Worktree
Ultimo aggiornamento
git worktree permette a un unico repository di avere più directory di lavoro contemporaneamente, ognuna su un branch diverso. Invece di mettere da parte il tuo lavoro con stash per cambiare branch, apri l'altro branch in una cartella separata: rivedi una PR, prepara un hotfix o compila un branch mentre ne modifichi un altro, il tutto condividendo la stessa cronologia .git.
Prova questi comandi nel terminal playground: una vera shell nel tuo browser, senza installare nulla.
Sintassi
| Command | What it does |
|---|---|
git worktree add ../hotfix hotfix | Fa il checkout di hotfix in una cartella adiacente |
git worktree add -b new ../new | Crea un branch e un worktree dedicato |
git worktree list | Elenca tutti i worktree e i loro branch |
git worktree remove ../hotfix | Rimuove un worktree |
git worktree prune | Ripulisce le voci di worktree obsolete |
Esempio pratico
Correggi un bug su main senza toccare il tuo feature branch.
| Step | Command | Result |
|---|---|---|
| 1 | git worktree add ../fix main | Checkout di main in ../fix |
| 2 | Correggi e fai commit in ../fix | Hotfix completato su main |
| 3 | git worktree remove ../fix | Pulizia fatta; il feature branch è rimasto intatto |
Domande frequenti su git worktree
Cos'è un git worktree?
.git condivisa: così non devi fare stash né clonare per lavorare su due branch alla volta.Come aggiungo un worktree?
git worktree add <path> <branch>, per esempio git worktree add ../hotfix hotfix. Git fa il checkout di quel branch nella nuova cartella. Per creare un nuovo branch nello stesso momento, usa git worktree add -b <newbranch> <path>.Quando conviene usare un worktree invece di cambiare branch?
Come rimuovo un worktree?
git worktree remove <path>. Se la cartella è stata cancellata a mano, esegui git worktree prune per ripulire i riferimenti obsoleti. Non puoi rimuovere il worktree principale (la cartella originale del repository), solo quelli aggiuntivi che hai creato.Posso esercitarmi online?
git worktree in una vera shell nel tuo browser, senza installare nulla. Il corso Git interattivo e gratuito di Coddy copre anche i flussi di lavoro con i branch passo dopo passo.