Vai al contenuto
PLC Forum


Tool versioning


Gibbo

Messaggi consigliati

Quale tool di versioning utilizzate per gestire i vostri progetti ?

 

In Azienda stiamo usando GIT. 

Come vi comportate con i progetti Siemens TIA che purtroppo genera file binari invece di file di testo (tipo Beckhoff e B&R) ? 

 

Thanks

Link al commento
Condividi su altri siti


Noi usiamo tourtoise SVN, ma non è proprio l'ideale perché basta aprire il progetto anche senza modificarlo per dover creare una nuova versione.

Qualcosa di più adatto alle nostre esigenze sembra essere versiondog di cui si è parlato in un altro post ma non ho avuto tempo di approfondire. 

https://www.plcforum.it/f/topic/247367-version-control-per-progetti-con-tia-portal/

Modificato: da acquaman
Link al commento
Condividi su altri siti

  • 2 weeks later...

Anche io attualmente uso SVN con lo stesso problema di acquaman.

L'unica idea che ho avuto è semplicemente di fare degli zip dei progetti e semplicemente scrivere nel log di volta in volta ad ogni commit le modifiche effettuate.

In questo modo si perde un po la funzionalità dell'svn in quanto non puoi fare nessun "compare", ma anche lasciando il progetto nella sua cartella non è che si riesca a risalire granchè delle reali differenze.

Non conosco versiondog, qualcuno ha maggiori dettagli al riguardo?

Link al commento
Condividi su altri siti

  • 3 weeks later...
Cesare Nicola

Non ho mai utilizzato nulla per il versioning, sebbene se ne sia parlato più di una volta. Sono davvero utili questi software? Cosa fanno esattamente, cosa producono come output? Io ho sempre usato il "mteodo della nonna": un numero che incremento ogni volta, tipo "nomefile_001" e un documento DOC o XLS dove scrivere le modifiche fatte. 🙂

 

Link al commento
Condividi su altri siti

il vantaggio del tool è quando si lavora in più persone essere tutti aggiornati, tu fai una modifica, ti dimentichi di fare il backup oppure il tuo collega non si accorge della nuova versione sul server va dal cliente e si ritrova una versione del software non aggiornata.

Con questo tool io posto l'ultima modifica ai miei colleghi arriva una notifica che devono aggiornare la loro versione locale cosi restiamo tutti aggiornati.

 

Link al commento
Condividi su altri siti

Cesare Nicola

Quindi il tool è in qualche modo "legato" a un file (tipo lo zap15 di Tia, che ne so) e si accorge quando viene aperto e/o modificato e crea... cosa?

 

 

Link al commento
Condividi su altri siti

E' un database che memorizza tutte le versioni che tu crei, noi lo usiamo direttamente sui progetti non sugli archivi, ogni volta che un utente modifica un progetto lo posta, quando lo posta sul server può anche inserire delle note, sul server vengono memorizzati tutte le versioni quindi si può anche aprire delle versioni vecchie lui tiene tutta la storia di tutte le modifiche, agli altri utenti arriva una notifica e sulle icone delle cartelle del progetto vengono segnalate che non sono coerenti (tipo Dropbox) a quel punto tutti aggiornano la propria versione.

 

Il lato negativo di quello che sto usando Tourtoise SVN è che è nato per gestire progetti per PC(Visualbasic, C ecc.ecc) con i nostri progetti anche se solo apri un progetto questo viene marcato come modificato e devi aggiornare la versione anche se non c'è stata nessuna modifica per questo vorrei provare VersionDOG che sembra creato apposta per progetti PLC e magari non ha questo handicap.

 

 

 

Link al commento
Condividi su altri siti

Git é uno dei sistemi di versionig più diffuso nel mondo PC. È stato inventato da un certo Linus Torvalds (vi dice niente Linux?). 

È un sistema distribuito al contrario di Svn che utilizza un modello centralizzato. 

Finalmente Siemens da TIA v16 integrerà sia Git che Svn anche se bisognerà capire se adotterà tutte le funzioni di Merge, Branching ecc... 

Finalmente anche Siemens si apre al mondo normale anche se era meglio mettere a disposizione i file di testo del progetto invece di quelli binari.... 

 

Link al commento
Condividi su altri siti

Cesare Nicola

Ho scaricato e installato ieri Git: al primo impatto... non ci ho capito assolutamente nulla! Rimando a quando avrò tempo di leggere tutorial e manuali, cioè mai. 🙂

 

 

 

Link al commento
Condividi su altri siti

Personalmente non ho mai sentito la grande necessità di un programma per la gestione delle versioni.
Dopo le modifiche, archivio il progetto con data e ora (TIA ti propone di farlo in automatico).
Se voglio tenere traccia delle modifiche fatte, le scrivo come commento in OB1.

Link al commento
Condividi su altri siti

Lavorando da solo non c'è problema, ma lavorando in più persone e importante che tutti abbiano sempre i progetti aggiornati e che tutti aggiornino i progetti sul server, con questo sistema in modo semplice e veloce.

Comunque è molto utile anche per un solo utente tiene traccia di tutte le versioni e puoi recuperare quelle vecchie, in un click veloce senza dover archiviare e tenere copie su copie.

Link al commento
Condividi su altri siti

Confermo quanto detto da @Acquaman ...quando ti abitui a usare Git non ne puoi più fare a meno anche se lavori da solo su un progetto....ogni giorno puoi tenere traccia delle modifiche fatte sul software e recuperarle in un qualsiasi momento.

 

Ovvio che se lavori con file di testo è molto più utile che se lavori con file binari (come fa Siemens)....se lo provi con B&R o Beckhoff ne apprezzi subito i vantaggi e diventa una droga...

Link al commento
Condividi su altri siti

del_user_97632
15 ore fa, Cesare Nicola scrisse:

Ho scaricato e installato ieri Git: al primo impatto... non ci ho capito assolutamente nulla! Rimando a quando avrò tempo di leggere tutorial e manuali, cioè mai. 🙂

git e' fantastico, uno strumento potentissimo ma richiede una certo tempo anche per prendere confidenza con le sole funzionalita' di base, per non parlare delle funzionalita' avanzate. Non avrai alcun problema a trovare tutorial su git. Se lavori da solo, considera anche la soluzione suggerita da batta, ma se poi proprio vuoi usare un sistema di versioning, investirei certamente il tempo a imparare git che ti potra tornare utile in molte altre occasioni future.

Modificato: da _angelo_
Link al commento
Condividi su altri siti

A mio avviso il vero vantaggio dei sistemi GIT/SVN e in generale di qualsiasi tool di versioning si va un po a perdere nei programmi di automazione, almeno in siemens.

 

La vera potenza secondo me sta nel fatto di poter facilmente confrontare le varie versioni presenti nel tuo db e capire le differenze, fare merge, tornare a versioni precedenti magari di un singolo blocco o di un solo segmento con un semplice click.

Questo al momento non è possibile su siemens, ne tanto meno con i metodi manuali descritti da batta o da cesare.

Inoltre se lavori in più persone o anche da solo ma con più macchine, con i tool di versioning basta fare "update" e avrai tutti i tuoi progetti aggiornati all'ultima versione.

 

Per il momento io ho scelto di rimanere su SVN piuttosto che GIT in quanto con i file binari GIT perde un po tutti i suoi vantaggi a mio avviso

 

il 3/6/2019 at 20:39 , Gibbo scrisse:

Finalmente Siemens da TIA v16 integrerà sia Git che Svn anche se bisognerà capire se adotterà tutte le funzioni di Merge, Branching ecc... 

Finalmente anche Siemens si apre al mondo normale anche se era meglio mettere a disposizione i file di testo del progetto invece di quelli binari.... 

Speriamo che arrivi a breve allora, meglio tardi che mai.

Link al commento
Condividi su altri siti

del_user_97632
16 minuti fa, suppaman87 scrisse:

La vera potenza secondo me sta nel fatto di poter facilmente confrontare le varie versioni presenti nel tuo db e capire le differenze, fare merge, tornare a versioni precedenti magari di un singolo blocco o di un solo segmento con un semplice click.

Beh, prima di fare operazioni con singoli click in git, c'e' una curva d'apprendimento, ma come detto sopra, investire nell'imparare git vale la pena a mio avviso. Per fortuna c'e' sempre "reflog" per salvarsi dai danni. Certo cvs / svn sono sistemi piu semplici ma da qual che ricordo siamo lontani da avere le possibilita' che offre git.. Non conosco il mondo dei plc, ma sicuramente su progetti della grandezza del kernel linux, strumenti come git bisect, blame, grep e molti altri facilitano alla grande il debug.

Link al commento
Condividi su altri siti

Per ridurre la curva di apprendimento di GIT basta usare un ottimo Client come Sourcetree e ci si scorda della riga di comando se non in rari casi...

Link al commento
Condividi su altri siti

SVN sarà meno potente ma è più immediato, non sempre programmatori plc non hanno basi forti di programmazione PC. Con SVN con un click fai tutto. 

Link al commento
Condividi su altri siti

il 6/6/2019 at 10:41 , acquaman scrisse:

SVN sarà meno potente ma è più immediato, non sempre programmatori plc non hanno basi forti di programmazione PC. Con SVN con un click fai tutto. 

Anche Git è intuitivo e basta un click... È sufficiente usare un client con Sourcetree o anche Tortoise per Git. 

Il problema grosso di SVN è che se sei senza connessione internet per esempio in aereo non puoi accedere al server e scaricare le vecchie versioni.

Con Git hai sempre tutti i commit vecchi con te, il tuo repository locale è una copia del repository remoto. 

Link al commento
Condividi su altri siti

Appena ho tempo magari lo provo, ma è già stato complicato ad EDUCARE tutti ad usare Tourtoise adesso che quasi tutti lo usano cambiare non mi sembra il caso.

Link al commento
Condividi su altri siti

Crea un account o accedi per commentare

Devi essere un utente per poter lasciare un commento

Crea un account

Registrati per un nuovo account nella nostra comunità. è facile!

Registra un nuovo account

Accedi

Hai già un account? Accedi qui.

Accedi ora
×
×
  • Crea nuovo/a...