Per tutte quelle persone che non hanno capito perché cambiare nome al master branch su git, ecco un piccolo riassunto VELOCE e una guida a come farlo!

E il gioco è fatto!
Una creato l'alias, potrete creare nuovi progetti con usando git new al posto di git init.
Per chi non volesse leggere un articolo intero, i comandi sono semplicemente:
Per completare
Appena rinominato con i comandi sopra-scritti, se usate github, dovrete cambiare le impostazioni del repository per far diventare main il branch di default.
Ora potete finalmente scrivere l'ultimo comando che vi libererà dal branch master (gioco di parole voluto):
git push --delete origin master
Per creare velocemente nuovi repository con la nomenclatura di default usando main al posto di master:
git config --global alias.new '!git init && git symbolic-ref HEAD refs/heads/main'
Veloce Riassunto
Per chi volesse un riassunto, git è nato per problemi di licenza del software precedentemente usato dagli sviluppatori del kernel linux.
Questo software (non più manutenuto) si chiama BitKeeper, e come comprova questa documentazione originale il termine usato per definire il branch principale li introdotto era master, nel senso del tanto normale quanto contestato concetto tecnico di master/slave.
Ora, in una bozza non approvata di standard (un RFC per intenderci), viene spiegato come questa nomenclatura sia una metafora oppressiva che andrebbe usata e valorizzata solo in contesti storici specifici, poco adatta a dare una idea precisa tecnica.
Che sia poco preciso tecnicamente è facile da spiegare per chiunque conosca git in quanto master è solo un'etichetta di default associata all'identificativo di un commit.
Questa etichetta non comanda nulla, ne è intrinsecamente necessaria ad attuare alcun comando.
Non rappresenta una master copy, in virtù del fatto che essendo un sistema di controllo del codice sorgente distribuito, per sua stessa natura non ha una versione che in alcun modo può comandare un fork o un suo clone. Basta un copia incolla e un nuovo master, completamente scollegato dal precedente, può essere creato.
Il mio parere
Secondo me fare questa modifica, sui propri progetti personali, è un'operazione semplice, utile a capire meglio come funziona git, e così veloce, che non farla mi pare un'occasione sprecata.
Per progetti di lavoro, questo cambiamento è nulla in confronto a cose ben più complesse causate da altri framework che usiamo (vedi i continui rifacimenti di frontend, angular sto proprio guardando te); inoltre potrebbe portare di positivo un dovuto check delle pipeline di build e test: se ci sono troppi riferimenti espliciti a master, anche solo nella generazione degli artefatti di produzione, un qualche problema potrebbe esserci.
Riferimenti
Per ulteriori informazioni sul come affrontare casi più complessi di conversione, ecco il link al post inglese che ha ispirato questo in italiano:
Comments
Post a Comment