Fondamentalmente, c'è un problema di gestione (la tua organizzazione non capisce le basi del processo di sviluppo del software , ad esempio il modello V ) che si condensa nella apparente incapacità di utilizzare un flusso di lavoro, una metodologia e strumenti minimi dell'era attuale. Questo è comune (leggi sul principio di Pietro ).
A proposito, immagino che il recente incidente ferroviario della SNCF a Parigi alla fine del 2017 abbia una causa simile (totale mancanza di cultura del software ad alto livello di gestione, quindi blocco di una grande stazione ferroviaria di Parigi per più di un giorno; ovviamente ci sono molto competenti Team IT presso SNCF, ma non vengono consultati sulle decisioni più importanti). Posso nominare diverse industrie europee con una totale mancanza di cultura del software e sono sicuro di riuscire a trovare cose simili anche negli Stati Uniti.
Il problema principale è: stai lavorando da solo sulla tua base di codice o lavori con i colleghi?
Se lavori da solo, puoi usare git localmente sul tuo computer e fare .git
periodicamente il backup del tuo codice (e probabilmente anche del tuo repository) (su quello spazio di archiviazione esterno). Assicurati di non perdere mai più di mezza giornata di lavoro (quindi esegui il backup dei dati periodicamente e in modo affidabile).
(Suppongo che tu sappia almeno entrambi git
e svn
che tu conosca la superiorità tecnica di git
; se non ti è nemmeno permesso installare alcuni strumenti come git
sul tuo computer di lavoro, devi avere una conversazione seria con il tuo capo su quel problema: devi la capacità e l'autorizzazione di installare strumenti open source esterni (e ciò spetta a te scegliere, configurarli e installarli con saggezza e attenzione e senza vulnerabilità note )
Se stai lavorando con diversi colleghi (immagino meno di una dozzina di loro), devi convincerli tutti a utilizzare un sistema di controllo della versione e probabilmente dovrai parlarne al tuo capo immediato (e comune). Potrebbe (probabilmente) decidere (o semplicemente accettare implicitamente) che una macchina (forse anche un vecchio desktop, forse persino il tuo desktop) sia usata come server git. È assolutamente necessario configurare quel server in modo tale che venga eseguito il backup del repository git almeno ogni ora; non puoi permetterti (e devi parlare con il tuo capo) di perdere più di un'ora di lavoro della tua squadra.
A proposito, adoro Linux e consiglierei di installare Linux sulla macchina che funge da git
server; quindi l'installazione git
e la configurazione di backup periodici (con alcuni crontab
lavori) è molto semplice; notare che un git
server potrebbe eseguire Linux con client Windows che lo utilizzano. Ti suggerirei persino di cambiare la tua macchina di sviluppo su Linux, se puoi. È "più economico" e molto più adatto agli sviluppatori
Ma devi usare un SCM. Potresti porre al tuo capo una domanda diversa: il tuo team dovrebbe usare un SCM esistente o dovrebbe reinventare la ruota e creare il tuo SCM? I boss sono generalmente contrari all'idea di reinventare la ruota. Se ti è permesso reinventare la ruota, dì al tuo capo che è un lavoro a tempo pieno per almeno un anno (che probabilmente farà piangere il tuo capo, quindi accetterà il modo ovvio) e divertiti a creare il tuo SCM. In questo caso improbabile, assicurati di studiare i sistemi SCM esistenti e chiedi di rendere il tuo sistema SCM uno strumento software gratuito (che verrà utilizzato e migliorato da altri team).
Potrebbe essere necessario preparare (per parecchi giorni) una precisa e specifica argomentazione per la necessità di uno SCM : prima per i vostri colleghi, quindi per il tuo capo immediato. Assicurati di suggerire anche soluzioni concrete (come eseguire qualche server git su un desktop o un server "vecchio" e eseguirne il backup ogni ora attraverso un crontab
lavoro)
Non installare alcun software (dall'esterno, anche open source) sul tuo computer di lavoro senza autorizzazione (nella maggior parte dei paesi, specialmente per lavori IT sensibili per lo Stato, l'installazione di un software senza autorizzazione è legalmente un crimine e potresti perdere il tuo lavoro o andare in prigione se lo fai .... quindi assicurati di essere autorizzato a farlo; forse copriti il culo chiedendo un'autorizzazione per iscritto, o almeno via e-mail).
(o dovrai chiedere caso per caso o devi ottenere la fiducia della tua organizzazione per poter installare sul tuo computer di lavoro qualsiasi software legale , principalmente open source o software gratuito).
PS. Come costruire tecnicamente, configurare, installare e quindi utilizzaregit
(dal suo codice sorgente software gratuito) o la maggior parte degli altri software gratuiti VCS su una macchina (anche senza l'autorizzazione dell'amministratore ) è una domanda molto diversa (da chiedere altrove). Ed è possibile installare quindi utilizzare git
senza alcuna autorizzazione di amministratore, a condizione che tu abbia abbastanza risorse (tempo, spazio su disco, un compilatore C, ecc ...) per quello.
Ho provato a installare il server Visual SVN, ma non è riuscito perché non ho i privilegi di amministratore da installare.
Questo è risolvibile con una specifica configurazione e compilazione del tuo git
o svn
dal codice sorgente del software libero di git
o SubVersion -non solo un pacchetto binario- (e anche il codice sorgente delle dipendenze ); come fare tecnicamente questa è una domanda diversa (ma tali domande tecniche dovrebbero andare in qualche altro posto). Ovviamente dovresti chiedere il permesso (al tuo capo) di compilare il codice sorgente git
prima di farlo. Ti dirà, o discuterai con lui, dei dettagli pratici (se accetta una tale soluzione) riguardo al trasferimento di quel codice sorgente dall'esterno sul tuo computer di lavoro.