Tutorial per principianti
Esistono tutorial fantastici (video e testo) che possono aiutarti a iniziare da un livello molto semplice. Git sembra avere un ottimo approccio a introdurre l'argomento in modo gentile per i principianti che ti spiegano il perché e utilizza la ripetizione, la definizione e grafica per aiutarti a ricordare i nomi e le funzioni dei comandi principali.
SVN
SVN intendeva essere fatto meglio con il CVS. CVS (concurrent Version System) lavorava su cose un file alla volta, SVN di solito lavorava su cose una directory o un albero di directory alla volta. SVN (e CVS o altri sistemi) possono essere importanti se lo si utilizza al lavoro, ma la mia opinione è che miglioriamo significativamente la nostra comprensione di ciò che serve per fare il controllo del codice sorgente ogni pochi anni, così come si preferirebbe un modello in ritardo computer, si dovrebbe preferire uno strumento di controllo del codice sorgente avanzato. È un enorme investimento per cambiare i sistemi e la cronologia del codice può essere persa, sebbene per molti sistemi ci siano convertitori che consentono di migrare il codice oltre alla cronologia e ad altri artefatti creati dal sistema che si sta ritirando.
Il controllo sorgente professionale soddisfa le esigenze professionali
La tua domanda "In che modo gli strumenti di utilizzo professionale come GIT e Subversion soddisfano le esigenze dei loro progetti?" si collega strettamente alla domanda "In che modo le squadre lavorano insieme senza entrare negli altri 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 hanno bisogno di livelli diversi 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 cambiamento nel contesto con versioni che cambiano nel tempo e spesso anche con rami che sono copie controllate del codice che servono a isolare i gruppi di modifiche da altri gruppi di modifiche.
Riportare le cose insieme, 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é di alcuni esperti. In SVN, la ramificazione potrebbe essere una questione personale, ma la fusione spesso ha avuto effetti dolorosi sulla squadra e il movimento del codice nella linea principale potrebbe essere doloroso dal punto di vista dell'autorizzazione, evitando la rottura e il livello di sforzo necessario per il compito .
Da un repository di controllo del codice sorgente stabilito, i professionisti possono soddisfare altre esigenze come la diagnosi dei problemi per la loro causa principale. Se esistevano versioni del codice che funzionavano e problemi rilevati di recente nella versione corrente, è possibile avanzare e retrocedere nella cronologia per individuare il punto in cui si è verificato il problema. In SVN questa capacità è immatura, ma in Git la ricerca dell'ultima versione funzionante / prima fallita è supportata da un comando chiamato git bisect. Il problema sarà causato da una delle modifiche di origine tra le due versioni che è potenzialmente una diagnosi molto più semplice di una ricerca dell'intero codebase.
Spiacente di divagare, spero che questo ti aiuti a utilizzare il controllo del codice sorgente.