Qual è il modo corretto per controllare la versione di un archivio protetto da password?

5

Sto lavorando con un file locale che estrai sempre da un archivio protetto da password (RAR), eseguo alcune modifiche / aggiunte e sovrascrivo il vecchio file all'interno dell'archivio con il nuovo file (non sovrascrivo il file archivio. Sovrascrivo il file al suo interno). Il RAR è protetto da password per determinati motivi di riservatezza, e ho bisogno che sia così.

Ho preso in considerazione l'utilizzo di Git per il controllo della versione, ma dal mio primo utilizzo di Git, sembra destinato a file che non sono archiviati. Volevo controllare la versione del mio file RAR. Ma cosa succede se decido di aggiungere altri file al RAR e poi eseguire il commit del RAR? Questo non rovina il punto di avere il controllo della versione in cui puoi anche fare un diff per confrontare le versioni ecc.? Ha senso usare un controllo di versione quando estraggo file dal RAR per fare modifiche e poi rimetterli nel RAR e commettere il RAR?

Il controllo della versione è il modo giusto per farlo o c'è qualcosa di meglio?

    
posta Nav 26.08.2012 - 06:23
fonte

5 risposte

3

Puoi anche mettere i tuoi file sotto controllo di versione, e quindi rar tutti i file insieme alla directory .git. Quindi ottieni tutti i vantaggi di git e hai tutto il contenuto protetto.

    
risposta data 26.08.2012 - 09:54
fonte
2

Considererei di non mettere il file RAR nel controllo della versione. Se si desidera disporre di funzionalità di confronto / confronto, è molto meglio mettere i file (di testo?) Nel controllo della versione. Se è necessario il file RAR, creare uno script per creare il file RAR da zero in modo riproducibile. Metti anche quello script nel controllo della versione.

Riguardo alla riservatezza: userei un file system criptato, ad esempio qualcosa come True Crypt , per i tuoi file locali (i tuoi copia di lavoro del testo e anche il repository git).

    
risposta data 26.08.2012 - 08:41
fonte
2

Se tutto quello che hai nel tuo repository è un file rar-red, perdi praticamente tutti i vantaggi di un sofisticato sistema di controllo delle versioni, come branching / merging, diffs, storage differenziale efficiente, ecc. Se vuoi mantenere percorrendo quella strada, quindi non hai davvero bisogno di un sistema di controllo della versione - una directory di file RAR farà esattamente la stessa cosa per te (meno l'integrazione IDE, ma puoi facilmente creare uno script per uscirne).

Se fai vuoi sfruttare i vantaggi del controllo del codice sorgente, ecco cosa puoi fare:

  • Configura una macchina dedicata su cui lavorare, con crittografia a disco intero. La macchina può essere una VM se non ne hai uno in giro, purché tutto sia criptato. Assicurati che nessuno abbia accesso a quella macchina tranne te stesso. Scegli password sicure.
  • Su quella macchina, configura un repository git e il tuo ambiente di sviluppo.
  • Blocca l'accesso alla rete: la tua macchina di sviluppo dovrebbe avere un insieme molto restrittivo di regole del firewall (e un buon firewall). La cosa più importante è bloccare tutto il traffico in entrata, tranne quello di cui si ha assolutamente bisogno: non vi è alcun motivo per consentire il traffico HTTP in entrata, ad esempio. Se si tratta di una macchina virtuale in esecuzione sulla stazione di lavoro locale, non è necessario alcun accesso alla rete, ad eccezione del download degli aggiornamenti software.
  • Copia il file RAR sul computer di sviluppo, decomprimilo e inserisci i file decompressi nel tuo repository git.
  • Ogni volta che è necessario spedire un RAR, esportare la versione HEAD di git repo e recuperarla con una password adatta, quindi copiarla dal computer di sviluppo.

Questo metodo ha in realtà alcuni vantaggi rispetto al tuo attuale approccio: i file decompressi non vengono mai scritti su disco non crittografati (poiché l'intero disco della macchina di sviluppo è crittografato) e poiché la macchina di sviluppo serve solo a questo scopo, puoi applicare misure di sicurezza più restrittive: ad esempio, non è necessario eseguire un browser Web (è possibile farlo sul proprio computer "normale"), non è necessario leggere alcuna e-mail, non è necessario eseguire operazioni come flash, Java, ecc. E se a un certo punto smetti di lavorare su quel progetto, puoi semplicemente cancellare la chiave crittografica, e tutto ciò che avresti mai saputo del progetto sparirà. Inoltre, la crittografia fornita da TrueCrypt e simili soluzioni di crittografia full-disk è di gran lunga migliore di qualsiasi cosa RAR abbia da offrire.

In ogni caso, devi decidere un modello di minaccia da difendersi e vedere quale strategia funziona meglio.

    
risposta data 26.08.2012 - 08:53
fonte
1

Se tutto ciò che stai facendo è sovrascrivere i file, non è proprio il controllo delle versioni. Usa il controllo della versione per diverse versioni, versioni, build, ecc. Di un progetto.

Penso che tu stia guardando questo nel modo sbagliato. C'è qualche ragione per cui il file rar non può essere decompresso e i file caricati in un progetto protetto da password in un numero qualsiasi di host git / subversion che offrono un progetto gratuito?

MODIFICA: in base alla risposta, lo vuoi locale.

Non sono sicuro di quale sistema operativo utilizzi, ma ecco VisualSVN

Questo dovrebbe consentire di configurare un repository Subversion locale su Windows. Qualsiasi integrazione di Subversion IDE dovrebbe funzionare. Conosco ANKSVN per VS. È possibile controllare l'accesso e richiedere l'accesso per accedervi. Ciò consentirà un controllo della versione effettivo per te, ma ti consentirà comunque di mantenere tutto locale e sicuro.

Modifica n. 2: la semplice sovrascrittura dei file non è una buona pratica. Non hai nulla su cui ricorrere se dovessi distruggere la funzionalità mentre cerchi di migliorarla.

    
risposta data 26.08.2012 - 06:38
fonte
0

btw ... RAR può gestire il controllo della versione in modo nativo (non in combina con la gente RAR solo un utente soddisfatto). Vedi questo link per i dettagli.

    
risposta data 29.01.2013 - 15:25
fonte

Leggi altre domande sui tag