29 aprile 2025
Git is Not a Folder
a cura di Ivan
Ivan è un Full Stack Developer con una forte esperienza sul backend. Il suo stack di riferimento: .NET, SQL Server, Angular, Git. Quando non sviluppa, Ivan si dedica al rugby. Per lui è molto più di uno sport, quasi uno stile di vita, perché insegna disciplina, spirito di squadra e condivisione (compreso fare da “grill master” durante il terzo tempo delle partite). Ivan adora la sensazione dell’andare in moto e, a casa, si prende cura del suo gatto Léon, che è anche la mascotte della sua squadra di rugby (è stato trovato al campo dopo una giornata di pioggia).
Git is not a Folder è un evento online della Rubrica Tecnica curata dai Blazariani, un momento di condivisione in cui Ivan ha illustrato due comandi potenti e spesso poco conosciuti di Git.
📌 Perché parlare di rebase e filter-branch
Durante la preparazione di questo evento, Ivan ci ha raccontato un’esperienza personale:
“All’università non si parlava di source control. Ho imparato Git da solo, su Stack Overflow. So che c’è chi ha studiato direttamente dai man
in Shell o su explainshell.com. Oggi questi comandi sono spesso evitati perché temuti, ma saperli usare è una vera marcia in più.”
🔄 Git rebase: riscrivere la storia recente
- Permette di riscrivere i commit recenti.
- Operazioni possibili: squash (unire commit), fixup (unire senza salvare il messaggio), reword (modifica messaggio), drop (elimina commit), riordino.
- Può essere usato anche per riallineare un branch con il main senza merge commit.
- Dopo la modifica, serve un push forzato (git push –force o –force-with-lease).
- Strumenti grafici come GitLens e GitHub Desktop semplificano queste operazioni.
🧹 Git filter-branch: pulizia profonda del repository
- Serve a rimuovere file (es. immagini pesanti o credenziali) da tutto lo storico del repository.
- Può anche correggere autore e committer su tutti i commit.
- Comandi complessi, ma efficaci per pulire repository o correggere errori di configurazione.
- Dopo l’uso, è necessario un push forzato su tutti i branch e tag.
🎙️ Riflessioni finali
“Sono comandi potenti, sì. Ma anche rischiosi se usati senza capire bene il contesto. È per questo che abbiamo voluto mostrarli in modo guidato e visivo.” – Ivan
Grazie Ivan per il tuo contributo alla community Blazar!
#SharingIsCaring
🎥 Potete ritrovare tutti i temi trattati in questa video-pillola di 10 minuti:
Vuoi eseguire il codice dell’applicazione?
Accedi al repository GitHub messo a disposizione da Luca.