Sì, la gestione del codice sorgente e il mantenimento di una cronologia delle modifiche è estremamente importante.
Devi sempre essere in grado di ricostruire l'ultima versione rilasciata del sistema, anche mentre stai lavorando alla prossima versione.
L'esempio classico è simile a questo:
- Hai rilasciato la versione 1.0 del tuo sistema
- Stai lavorando su nuove funzionalità per la versione 1.1
- Un bug grave si trova nella versione 1.0. Devi correggere il bug e rilasciare una versione 1.0a il prima possibile. Per fare ciò, si desidera avere il codice sorgente per 1.0 su cui lavorare, e non l'intestazione della versione di sviluppo per 1.1.
- Dopo aver rilasciato la correzione del bug, si desidera tornare al lavoro che porta alla versione 1.1
- Quando hai implementato le nuove funzionalità e sei pronto per rilasciare 1.1, vuoi essere sicuro che la correzione implementata nella versione 1.0a sia presente anche nel codice 1.1.
Gli strumenti di cui hai bisogno per gestire questo tipo di problemi sono detti "controllo di revisione" o "controllo di versione". Vedi l'articolo di Wikipedia sul controllo di revisione per ulteriori informazioni sul controllo di revisione. Wikipedia ha anche una lista di software di controllo di revisione che ti darà alcune opzioni.
Vorrei che non non volesse nulla per tenere traccia delle modifiche a ogni riga di codice mentre scrivo. Quello che voglio è tracciare ogni cambiamento completato e testato per raggiungere un determinato obiettivo definito. Questo è ciò che i sistemi di controllo di revisione ti danno. Dopo aver terminato una determinata attività, "esegui il check-in" o "conferma" le modifiche al sistema di controllo di revisione.
Sono un grande fan di Mercurial . Molti sistemi di controllo di revisione più recenti, incluso Mercurial, utilizzano un approccio distribuito in cui ogni sviluppatore ha una copia del repository e si può sincronizzarsi tra loro quando si sceglie di farlo. Una volta che ti sei abituato all'idea, è molto potente e non sarei senza di esso.
Non non perdere tempo in Microsoft Sourcesafe. È vicino alla morte. Team System lo sta sostituendo.