Tutorial per principianti
Esistono ottimi tutorial (video e testo) che possono aiutarti a iniziare da un livello molto semplice. Git sembra avere un ottimo approccio per introdurre l'argomento in modo delicato per i principianti che ti spiega perché prima e usa la ripetizione, la definizione e la grafica per aiutarti a ricordare i nomi e le funzioni dei comandi chiave.
SVN
SVN intendeva essere CVS fatto meglio. CVS (sistema di versione concorrente) ha lavorato su cose un file alla volta, SVN in genere ha lavorato su cose una directory o un albero di directory alla volta. SVN (e CVS o altri sistemi) possono essere importanti se lo stai usando sul lavoro, ma la mia opinione è che miglioriamo in modo significativo la nostra comprensione di ciò che serve per fare il controllo del codice sorgente ogni pochi anni, così come preferiresti un modello in ritardo computer, dovresti preferire uno strumento di controllo del codice sorgente in ritardo. È un grande investimento cambiare i sistemi e la cronologia del codice può andare persa, sebbene per molti sistemi ci siano convertitori che ti consentono di migrare il tuo codice, nonché la cronologia e altri artefatti creati dal sistema in pensione.
Il controllo del codice sorgente professionale soddisfa le esigenze professionali
La tua domanda "In che modo gli strumenti professionali utilizzano GIT e Subversion per soddisfare le esigenze del loro progetto?" si relaziona strettamente alla domanda "In che modo i team lavorano insieme senza intralciarsi l'un l'altro mentre continuano a lavorare il più rapidamente possibile?"
Il codice sta cambiando frequentemente con alcuni sviluppatori che creano codice che altri sviluppatori useranno e con una varietà di parti interessate che necessitano di diversi livelli di stabilità rispetto all'innovazione. I sistemi di controllo del codice sorgente aiutano a memorizzare il codice per l'uso da parte del team, mantenendo ogni modifica nel contesto con le versioni che cambiano nel tempo e spesso anche con i rami che sono copie controllate del codice che servono a isolare gruppi di modifiche da altri gruppi di modifiche.
Riunire le cose, unire il lavoro di molti membri del team è un compito che in SVN e nei sistemi precedenti era centralizzato e difficile. Per i team che utilizzano Git, la fusione diventa più semplice e accessibile all'influenza dell'intero team anziché a pochi esperti. In SVN, la ramificazione potrebbe essere una questione personale, ma la fusione spesso ha avuto impatti dolorosi sulla squadra e il trasferimento del codice nella linea principale potrebbe essere doloroso dal punto di vista dell'autorizzazione, evitando rotture e il livello di sforzo necessario all'attività .
Da un repository di controllo del codice sorgente consolidato, i professionisti possono soddisfare altre esigenze come la diagnosi dei problemi alla causa principale. Se esistevano versioni del codice che funzionavano in precedenza e nuovi problemi riscontrati nella versione corrente, è possibile avanzare e retrocedere nella cronologia per individuare quando si è verificato il problema. In SVN, questa funzionalità è immatura, ma in Git la ricerca dell'ultima versione funzionante / prima non riuscita è supportata da un comando chiamato git bisect. Il problema sarà causato da una delle modifiche all'origine tra le due versioni, che è potenzialmente una diagnosi molto più semplice rispetto a una ricerca dell'intera base di codice.
Siamo spiacenti di divagare, spero che questo ti aiuti nel tuo cammino verso l'uso del controllo del codice sorgente.