Aggiorna
Lavoro su un piccolo team di sviluppatori, 4 ragazzi. Hanno tutti usato il controllo del codice sorgente. La maggior parte di loro non sopporta il controllo del codice sorgente e sceglie invece di non usarlo. Credo fermamente che il controllo delle fonti sia una parte necessaria dello sviluppo professionale. Diversi problemi rendono molto difficile convincerli a utilizzare il controllo del codice sorgente:
- Il team non è abituato a utilizzare TFS . Ho avuto 2 sessioni di allenamento, ma è stato assegnato solo 1 ora, il che è insufficiente.
- I membri del team modificano direttamente il codice su server. Ciò mantiene il codice fuori sincrono. Richiedere il confronto solo per essere sicuri di lavorare con il codice più recente. E sorgono complessi problemi di fusione
- Le stime di tempo offerte dagli sviluppatori escludono il tempo necessario per risolvere uno di questi problemi. Quindi, se dico nono, ci vorranno 10 volte più a lungo ... Devo costantemente spiegare questi problemi e rischiare me stesso perché ora il management può percepirmi come "lento".
- I file fisici sul server differiscono in modo sconosciuto su ~ 100 file. La fusione richiede la conoscenza del progetto a portata di mano e, quindi, la cooperazione tra sviluppatori che non sono in grado di ottenere.
- Altri progetti non sono sincronizzati. Gli sviluppatori continuano ad avere sfiducia nei confronti del controllo del codice sorgente e quindi aggravano il problema non utilizzando il controllo del codice sorgente.
- Gli sviluppatori sostengono che l'uso del controllo del codice sorgente è uno spreco perché la fusione è soggetta a errori e difficile. Questo è un punto difficile da argomentare, perché quando il controllo del codice sorgente viene utilizzato in modo errato e il controllo del codice sorgente viene continuamente aggirato, è effettivamente soggetto a errori. Pertanto, le prove "parlano da sole" dal loro punto di vista.
- Gli sviluppatori sostengono che modificando direttamente il codice del server, ignorando TFS si risparmia tempo. Anche questo è difficile da argomentare. Poiché l'unione richiesta per sincronizzare il codice per iniziare con richiede molto tempo. Moltiplicalo per i 10 progetti che gestiamo.
- I file permanenti sono spesso memorizzati nella stessa directory del progetto web. Quindi la pubblicazione (pubblicazione completa) cancella questi file che non sono nel controllo del codice sorgente. Questo fa anche sfiducia nel controllo della sorgente. Perché "la pubblicazione rompe il progetto". Correggere questo problema (spostando i file archiviati fuori dalle sottocartelle della soluzione) richiede molto tempo e il debug in quanto queste posizioni non sono impostate in web.config e spesso esistono su più punti di codice.
Quindi, la cultura persiste. La cattiva pratica genera pratiche peggiori. Le soluzioni sbagliate portano a nuovi hack per "risolvere" problemi molto più profondi e molto più lunghi. I server, lo spazio su disco rigido sono estremamente difficili da trovare. Tuttavia, le aspettative degli utenti sono in aumento.
Cosa si può fare in questa situazione?