MarkNode include il supporto Git integrato, così puoi tenere traccia delle modifiche, eseguire commit e sincronizzare con un remoto senza uscire dall’editor.
Rilevamento automatico del repository
Quando apri una cartella come progetto, MarkNode verifica se contiene un repository Git. Se ne trova uno, le funzionalità Git si attivano automaticamente — nessuna configurazione richiesta. Se la cartella non è un repository Git, le funzionalità Git restano nascoste.
Barra di stato
La barra di stato in fondo alla finestra mostra a colpo d’occhio il contesto Git corrente:
- Nome del branch — il branch attualmente in uso
- Numero di modifiche — il numero di file modificati, aggiunti o eliminati. Questo contatore è cliccabile: fai clic su di esso per aprire il pannello Controllo del codice sorgente.
L’indicatore del branch si aggiorna in tempo reale. Se cambi branch dal terminale o da un altro strumento, la barra di stato riflette il cambiamento senza bisogno di ricaricare. Per i conteggi avanti/indietro e per tutte le azioni Git, usa il pannello Controllo del codice sorgente descritto di seguito.
Il pannello Controllo del codice sorgente
Tutte le azioni Git si trovano nel pannello Controllo del codice sorgente — una vista nella barra laterale ispirata al familiare schema Source Control di editor come VS Code. Aprilo dall’icona Controllo del codice sorgente nella barra di navigazione (compare dopo File recenti, solo quando il progetto è un repository Git) oppure premi Cmd+Shift+K su macOS o Ctrl+Shift+K su Windows e Linux.
Il pannello ti offre tutto in un unico posto, senza che una finestra di dialogo modale blocchi l’editor:
- Intestazione — il nome del branch corrente e il numero di commit avanti/indietro rispetto al remoto
- File modificati — raggruppati in Modifiche in staging e Modifiche (non in staging), con ogni voce che mostra il nome del file, il percorso e una lettera di stato
- Azioni inline — passa il mouse su un file per aggiungerlo o rimuoverlo dallo staging; l’intestazione Modifiche ha un’azione Aggiungi tutto allo staging e l’intestazione Modifiche in staging ha un’azione Rimuovi tutto dallo staging
- Area di commit — una casella per il messaggio e un pulsante Commit, abilitato una volta che hai file in staging e hai scritto un messaggio
- Barra degli strumenti — le azioni Pull, Push e Aggiorna
Indicatori di stato dei file
L’esplora file colora il nome di ogni file per indicarne lo stato Git:
| Stato | Significato |
|---|---|
| Modificato | Il file ha modifiche non ancora sottoposte a commit |
| Aggiunto | Un nuovo file che è stato messo in staging |
| Non tracciato | Un nuovo file non ancora messo in staging |
| Eliminato | Un file tracciato che è stato rimosso |
| Rinominato | Un file tracciato che è stato spostato o rinominato |
| Conflitto | Il file presenta conflitti di merge da risolvere |
Lo stato si propaga verso l’alto nell’albero delle cartelle — se un file all’interno di una cartella presenta modifiche, anche il nome della cartella superiore viene colorato (assumendo lo stato con priorità più alta). Questo ti permette di individuare le aree modificate del progetto senza espandere ogni directory.
Eseguire il commit delle modifiche
Il commit avviene direttamente nel pannello Controllo del codice sorgente — non c’è alcuna finestra di dialogo separata:
- Metti in staging i file che vuoi includere passando il mouse su ciascuno e facendo clic sull’azione di staging, oppure usa Aggiungi tutto allo staging nell’intestazione della sezione.
- Scrivi un messaggio di commit nell’apposita casella.
- Fai clic su Commit.
MarkNode esegue il commit sul repository locale, svuota la casella del messaggio e aggiorna l’elenco dei file e il contatore delle modifiche nella barra di stato. Se il commit non riesce — ad esempio, perché un hook pre-commit lo rifiuta — il pannello mostra l’errore e conserva il messaggio di commit, così puoi riprovare.
Pull e push
Le azioni Push e Pull si trovano nella barra degli strumenti del pannello Controllo del codice sorgente.
- Pull recupera gli ultimi commit dal remoto e li unisce al branch corrente
- Push invia i commit locali al remoto
Se il push viene rifiutato (ad esempio, perché il remoto contiene commit che non hai in locale), dovrai prima eseguire un pull e risolvere eventuali conflitti prima di eseguire nuovamente il push.
File modificati al di fuori di MarkNode
Se modifichi i file dal terminale o da un altro editor, MarkNode rileva le modifiche e ricarica automaticamente i file interessati. Non è necessario aggiornare manualmente l’editor o l’esplora file.
Questo vale anche per le operazioni Git: eseguendo git checkout, git merge o qualsiasi comando che modifichi i file dell’albero di lavoro, il risultato si riflette immediatamente nell’editor.