Funzionalità
Tutto quello che SpiderGit sa fare
SpiderGit unisce due livelli: la visione d’insieme, con workspace e una dashboard per tutti i repository, e il lavoro sul singolo repository, con gli strumenti git di ogni giorno. Qui li trovi tutti.
01 · Dashboard
Lo stato di ogni repository, a colpo d’occhio
La dashboard è il cuore di SpiderGit: una tabella con tutti i repository del workspace aperto e, per ognuno:
- branch corrente e branch remoto collegato (upstream), oppure l’indicazione di HEAD staccato o di branch mai pubblicato;
- modifiche locali: file in stage, modificati, non tracciati e in conflitto, con badge colorati, più il numero di stash;
- commit da inviare (↑) e da scaricare (↓) rispetto all’upstream;
- ora dell’ultimo fetch;
- eventuali errori: cartella spostata o cancellata, repository non leggibile, fetch fallito.
In alto, cinque riquadri riassumono l’intero workspace: numero di repository, quanti hanno modifiche locali, quanti commit sono da inviare e in quanti repository, quanti da scaricare, quanti repository richiedono attenzione.

Gruppi
I repository si raggruppano (per esempio backend, frontend, mobile, infra). Ogni gruppo mostra quanti repository contiene e quanti richiedono attenzione, e si apre o si chiude con un clic. I repository senza gruppo stanno in fondo.

Organizzare senza uscire dalla dashboard
Con il tasto destro su un repository puoi aprirlo, fare il fetch, rinominarlo, cambiargli gruppo o spostarlo in un gruppo esistente; dall’intestazione di un gruppo puoi rinominarlo o scioglierlo. Per spostare un repository basta anche trascinarlo sul gruppo di destinazione.
Sempre aggiornata
- Aggiorna rilegge lo stato locale di tutti i repository in parallelo, senza rete.
- Fetch di tutti scarica gli aggiornamenti dai remoti in background, così i commit da scaricare sono reali; si può attivare in automatico all’apertura del workspace.
- Lo stato viene salvato: all’avvio la dashboard compare subito con gli ultimi dati, poi si aggiorna.
- Ricerca per nome, percorso o branch, ordinamento per ogni colonna e filtro «solo repository con modifiche o da sincronizzare».

02 · Workspace
Clienti, aziende, progetti: ognuno al suo posto
Un workspace è un insieme di repository con le sue impostazioni. Puoi crearne quanti vuoi, per esempio uno per ogni cliente, uno per i progetti open source e uno per quelli personali.
- Identità git per workspace: nome ed email usati per commit, merge, tag, cherry-pick e revert nei repository di quel workspace, senza cambiare la configurazione globale di git.
- Colore e descrizione per riconoscerlo a colpo d’occhio.
- Fetch automatico all’apertura, attivabile per workspace.
- Workspace predefinito, aperto direttamente all’avvio; gli altri sono a un clic dal pulsante in alto a destra.
- Lo stesso repository può stare in più workspace, con gruppo e preferiti indipendenti.
- Duplicazione di un workspace con impostazioni e repository.


03 · Libreria e scansione
Importa decine di repository, già organizzati
La libreria raccoglie i repository del workspace: preferiti in cima, poi i gruppi; per ogni repository puoi cambiare il nome visualizzato e il gruppo, aprire la cartella o rimuoverlo dal workspace (i file non vengono toccati). I repository si aggiungono uno alla volta, clonandoli da un URL con l’avanzamento in tempo reale, oppure in blocco con la scansione.
La scansione cerca i repository nelle cartelle di riferimento fino alla profondità che scegli, salta le cartelle pesanti (node_modules, bin, obj…) e segnala quelli già presenti. Con l’opzione «Gruppo dalle sottocartelle» ogni repository riceve come gruppo le cartelle tra la cartella di riferimento e il repository stesso: partendo da W:\work\aurora-retail, backend\notifications-service finisce nel gruppo “backend” e data\analytics-etl nel gruppo “data”.



04 · Storico e grafo
La storia del progetto, finalmente leggibile
- Grafo dei branch colorato, con merge e diramazioni.
- Etichette di branch locali, remoti e tag sui commit.
- Ricerca per messaggio, autore, hash o branch.
- Dettaglio del commit: messaggio completo, autore, data, genitori, file modificati e diff di ogni file.
- Ordinamento a scelta: per data del commit, per data dell’autore o topologico (le impostazioni si applicano subito).
- Dal menu contestuale di un commit: nuovo branch o tag, checkout, merge, cherry-pick, revert, rebase interattivo, copia di hash e messaggio.



05 · Modifiche e commit
Prepara il commit esattamente come vuoi
- Due liste, non in stage e in stage, con lo stato di ogni file (modificato, aggiunto, eliminato, rinominato, non tracciato, in conflitto).
- Diff affiancato all’elenco, con numeri di riga.
- Stage per blocchi: metti in stage, togli o scarta un singolo blocco di modifiche, non solo il file intero.
- Selezione multipla (Ctrl o Maiusc + clic): stage, rimozione dallo stage e stash dei soli file selezionati dal menu contestuale.
- Scarta modifiche con conferma; i file non tracciati vengono eliminati solo dopo un avviso esplicito.
- Commit con contatore della lunghezza del riepilogo, amend dell’ultimo commit e Commit e push in un solo passaggio (anche con Ctrl+Maiusc+Invio).
- Si vede sempre con quale identità verrà fatto il commit: quella del workspace o quella globale di git.
- La lista si aggiorna da sola quando i file cambiano su disco.



06 · Branch, tag e remoti
Tutto il pannello di controllo del repository
Nel pannello laterale della vista repository (lo vedi a sinistra nello screenshot dello storico):
- Branch locali con i commit da inviare e da scaricare; branch remoti; tag; remoti; stash.
- Branch: crea, passa a un altro branch (anche partendo da un branch remoto, con tracking automatico), rinomina, elimina (con avviso se contiene commit non uniti), merge nel branch corrente.
- Tag: crea (anche annotati), elimina, pubblica sul remoto.
- Remoti: aggiungi, modifica l’URL, rimuovi; elimina branch e tag dal remoto.
- Fetch, pull (merge, rebase o solo fast-forward) e push con avanzamento; un branch nuovo viene pubblicato scegliendo remoto e nome; se il push viene rifiutato puoi fare prima il pull o sovrascrivere in sicurezza (force-with-lease).
- Stash: crea (anche con i file non tracciati), applica, applica ed elimina, elimina.
07 · Operazioni avanzate
Riscrivi la storia, senza paura
- Rebase interattivo visuale: per ogni commit scegli se mantenerlo, rinominarlo, unirlo al precedente (squash o fixup) o eliminarlo, e cambia l’ordine con le frecce. Nessun editor di testo da configurare.
- Cherry-pick e revert di un commit con conferma.
- Merge con l’opzione di creare sempre un commit di merge.
- Checkout di un commit in HEAD staccato, con spiegazione di cosa comporta.

08 · Conflitti
Conflitti senza panico
Quando un merge, un rebase, un cherry-pick o un revert si ferma, SpiderGit lo dice con un banner che spiega cosa fare e offre Continua o Annulla operazione. Per ogni file in conflitto vedi le due versioni evidenziate e puoi tenere quella corrente o quella in arrivo con un clic, aprire il file nel tuo editor e segnarlo come risolto.

09 · Blame
Chi ha scritto questa riga?
Il blame mostra per ogni riga del file il commit, l’autore e la data dell’ultima modifica, anche per le righe non ancora committate. Si apre da un file modificato o da un file di un commit dello storico.

10 · Sicurezza e credenziali
Pensato per il mondo reale
- Credenziali: SpiderGit usa il credential helper configurato in git (per esempio Git Credential Manager); se non ce n’è uno, chiede utente e password o token in una finestra, senza salvarli.
- Operazioni in background silenziose: il fetch automatico non apre mai richieste di credenziali.
- Repository di un altro utente: quando git rifiuta un repository per motivi di sicurezza (“dubious ownership”, tipico di dischi esterni o cartelle copiate da un altro PC), SpiderGit lo riconosce e propone di dichiararlo attendibile, mostrando il comando che eseguirà.
- Errori completi: un clic su un errore mostra il messaggio integrale di git, selezionabile per copiare i comandi suggeriti.

11 · Impostazioni e lingue
Fatto a modo tuo
- Modifica del workspace aperto: nome, descrizione, colore, identità git, fetch automatico, workspace predefinito.
- Impostazioni di sistema, valide per tutta l’applicazione: lingua dell’interfaccia (italiano, inglese, spagnolo o quella del sistema) e ordinamento dello storico.
- Informazioni su git, identità globale, credential helper e cartella dei dati.


Provalo con i tuoi repository.
SpiderGit è gratuito, per Windows, Linux e macOS.