Generatore di Comandi Git

Avanti

Ogni ingegnere ha cercato su Google “come annullare l’ultimo commit” almeno due volte. Invece di indovinare tra reset --soft, reset --mixed e reset --hard, scegli il compito da un elenco e il generatore stampa il comando esatto, con il tuo branch, commit SHA o nome del tag riempito.

Come generare un comando Git

  1. 1

    Scegli il compito

    Annulla l'ultimo commit, modifica il messaggio, rebase su main, cherry-pick, reset forzato su remoto, tagga una release…

  2. 2

    Compila i parametri

    Nome del branch, commit SHA, tag, solo i campi necessari per ogni compito.

  3. 3

    Leggi il comando

    Lo strumento assembla i flag giusti nell'ordine corretto.

  4. 4

    Copia e esegui

    Incolla nel tuo terminale; il comando è una riga da inserire, non pseudo-codice.

Compiti che copre

Compito Comando prodotto
Annulla l’ultimo commit (mantieni in staging) git reset --soft HEAD~1
Modifica l’ultimo messaggio di commit git commit --amend -m "…"
Scarta tutte le modifiche non committate git restore . + git clean -fd
Crea + passa a un nuovo branch git checkout -b feature/x
Elimina il branch localmente + remotamente git branch -d x + git push origin --delete x
Sincronizza il branch feature con main git fetch origin + git rebase origin/main
Cherry-pick un commit git cherry-pick <sha>
Ripristina un commit (sicuro) git revert <sha>
Tagga e spingi una release git tag -a v1.0.0 -m "…" + git push origin v1.0.0
Reset forzato locale su remoto git fetch origin + git reset --hard origin/main

Comandi contrassegnati come sicuri vs distruttivi

  • Sicuri (ripristinabili): commit, switch, checkout -b, revert, tag.
  • Distruttivi per l’albero di lavoro locale: restore ., clean -fd, reset --hard.
  • Distruttivi sulla cronologia condivisa: push --force, filter-repo, rebase su branch utilizzati da altri.

Suggerimento: esegui comandi rischiosi in dry-run

Prima di git clean -fd, esegui git clean -nd, il flag -n stampa cosa verrebbe eliminato senza eliminare. Stessa idea per git rm: leggi prima git status.

Domande frequenti

Perché “annullare” significa cose diverse. reset --soft HEAD~1 mantiene le tue modifiche in staging così puoi ri-committare; --mixed le rimuove dallo staging; --hard le elimina. Il generatore ti consente di scegliere l’intento invece di memorizzare i flag.

revert crea un nuovo commit che annulla uno vecchio, sicuro su un branch condiviso perché la cronologia è preservata. reset riavvolge il puntatore del branch, il che cambia la cronologia e richiede un push forzato se il branch è condiviso.

Sì, per il compito “rimuovere un file da tutta la cronologia”. È più sicuro e veloce rispetto al deprecato filter-branch; devi installarlo separatamente (brew install git-filter-repo o tramite pip).

No. Stampa solo il comando, eseguirlo è sempre una tua decisione, così puoi rivedere i flag e il contesto prima di toccare il repo.

Strumenti correlati

Strumento disponibile in altre lingue