Presentazione
Questa applicazione è stata scritta in Python utilizzando
le fantastiche librerie wxPython.
Può essere utilizzata per confrontare una directory locale (e
le relative sottodirectory) con una directory
remota. E'utile per sincronizzare le directory più importanti su
un server (o su un pendrive usb) con le rispettive directory locali. Il
tutto con un semplice click.
Un'altra situazione in cui è molto utile è quando
più di una persona
può modificare alcuni files. Con questo programma, è
possibile ottenere la versione più recente
nella propria directory locale e sincronizzare la proprie
directory locali
con il server.
E' possibile controllare più directory in una sola volta.
Il programma interroga l'utente per essere sicuro che voglia
sincronizzare quelle directory (e sottodirectory).
L'utente può scegliere di non sincronizzare alcuni specifici
file o intere sottodirectory.
DirsSync permette di scegliere quali tipi di file non debbano essere
sincornizzati. Per esempio è possibile decidere che tutti i file
.zip non debbano più essere sincronizzati. Questa selezione
è specifica per ogni directory.
Dalla versione 1.3 il sistema può confrontare i file a
seconda della:
- data e ora dell'ultima modifica: verrà tenuto l'uiltimo che
è stato modificato.
- dimensione : verrà tenuto il più grande.
E' possibile implementare facilmente altri algoritmi di
confronto. E' possibile inoltrare delle richieste qui.
L'applicazione è rilasciata sotto la licenza GPL.
Download
Come prerequisito, è necessario che siano installati Python e
wxPython; è possibile ottenere questi ottimi software ai
seguenti link:
www.python.org
www.wxpython.org
Se si sceglie l'exe per win32 questi prerequisiti non sono necessari.
Si può scaricare la versione più recente di DirsSync qui.
I commenti sono graditi sulla nosta mailing list.
Log delle modifiche
DirsSync 2.0-rc1
Dopo quattro anni di buoni servizi, ho deciso di riscrivere
completamente DirsSync. Principalmente a causa delle difficoltà
incontrate per aggiungere alcune nuove funzioni. E possibile
scaricare questa verione dalla pagina di download su Sourceforge
qui.
Per eseguirla si digiti: python run.py
E' stata introdotta una divisione tra il motore di DirsSync (che
può
essere importato in altri programmi python) e l'interfaccia grafica
(GUI).
L'interfaccia grafica è stata costruita usando
wxGlade.
Ho bisogno di aiuto per creare un "fork" nel CVS. Se qualcuno
potesse guidarmi, perchè non sono un esperto del CVS.
Grazie per i suggerimenti; per segnalare bugs si utilizzi la
funzione di bug tracking di Sourceforge.
In ogni caso è necessario specificare chiaramente se ci si
riferisce
a DirsSync2 o a DirsSync.
DirsSync continuerà ad esistere (per i bug fix) in parallelo a
DirsSync2 finchè quest'ultimo non sarà sufficientemente stabile.
DirsSync 1.3
Dopo i test e le correzioni, rilasciamo la verione 1.3
DirsSync 1.3 RC3
Piccoli bug fix. Grazie a Mark e Chris.
DirsSync 1.3 RC2
Grazie a Valerio, DirsSync è ora internazionalizzato in
italiano e francese.
I nuovi motori di confronto tra file possono essere facilmente
modificati.
DirsSync 1.3 (Beta)
Grazie a Mark Carter per il suo fantastico contributo a DirsSync. Ha
ripulito il codice ed ha implementato diverse RFE.
Grazie a Mark, questa versione proporrà la sincronizzazione in
un solo senso ("One-Way") e l'"Eliminazione".
DirsSync 1.2
DirsSync 1.2 è in preparazione.
Si sta realizzando una nuovo metodo per avere più possibilita di
confornto tra file. Allo stesso tempo, questo confronto sarà
semplificato permettendo agli sviluppatori di creare facilmente nuovi
algoritmi di confronto.Grazie a Mark Carter per i sui suggerimenti
davvero importanti.
Questa verisione avrà i meccanismi "Forza su remoto" e "Forza su
locale" (con o senza eliminazione).
E' possibile ottenere la versione beta dal CVS.
DirsSync 1.1
E' stata aggiunta una funzione di filtraggio: creando un file
".dirsync" in una directory si dice a DirsSync di non sincronizzare
alcuni file.
E' necessario specificare un file per linea e evitando di
lasciare linee vuote.
Per esempio i file da escludere possono essere:
.dirsync
*.zip
*.*~
Cartella1
Come si vede è possibile utilizzare "wildchar" (caratteri
jolly), ed è possibile specificare una intera subdirectory.
Se le sottodirectory che non si vogliono moficare in locale ed in
remoto sono diverse e necessario evitare di sincronizzare il file
".dirsync".
Per le persone un po' pigre ;-) che non vogliono installare Python e wxPython, è stato creato un exe Win32
DirsSync 1.0
Dal momento che il programma è in uso da molto tempo senza
alcun problema, ho deciso di rinominare la versione 0.3 a versione 1.0.
DirsSync-0.3
Piccoli bug fix : controllo di validità sugli input.
DirsSync-0.2
Le modifiche riguardano essenzialmente l'aspetto delle finestre.
E' stato aggiunto LayoutConstraint. In questo modo è
possibile ridimensionare la finestra e le diverse liste saranno
adattate autimaticamente.
DirsSync-0.1
Dopo aver utilizzato questa versione per molti mesi, ho deciso
di mettere questa versione di DirsSync a disposizione di tutti.
Nient'altro da aggiungere.
Documentazione
1) Nella scheda "Input" vanno inserite le directory che si intende
sincronizzare (devono essere montate).
Come impostazione predefinita il confronto
sarà fatto basandosi su data e ora dell'ultima modifica.
Tuttavia nella scheda "Opzioni" è possibile selezionare un
diverso criterio di confronto.
2) Fare click su "Aggiungi confronto". Aggiungere tutte le directory
che di desiderano sincronizzare. E' possibile sincronizzare più
di una directory con un solo click.
3) Fare click sul pulsante "Avanti >>".
4) Il programma passerà automaticamente alla scheda "log" per
mostrare cosa sta facendo.
5) Al termine del controllo, si passa automaticamente alla scheda
"Lista trasferimenti". Qui vengono mostrate le differenze tra le
directory.
Per impostazione predefinita, la colonna
"trasferisci" è sempre impostata su "Si".
E' possibile cambiarla facendo doppio click sullo specifico file che
non si vuole trasferire.
Se non si vuole trasferire una intera
directory è necessario cambiare il suo stato "trasferisci" in
"no" facendo doppio click su di essa.
6) Fare click sul pulsante "SINCRONIZZA". Il programma
passerà automaticamente alla scheda "log" mostrando cosa sta
facendo.
7) Dalla verione 1.1 esiste la possibilità di escludere dei
file elencandoli in un file di nome ".dirsync" posto nella directory
locale o in quella remota.Il file deve contenere un file o una
directory da escludere su ogni linea, e anche possibile utilizzare i
caratteri jolly (wildcard). E' però necessario evitare le linee
vuote.
Sviluppatori
Nel caso si vogliano inviare commenti, critiche, segnalare errori,
proporre correzioni, essere registrati come sviluppatori, si visiti la
mia pagina su sourceforge
.
Attualmente lo staff di sviluppo è composto da :
- Vincent : Iniziatore del progetto e traduttore in francese
- Mark : sviluppatore e tester
- Valerio : sviluppatore (I18N), traduttore per l'italiano
- Sara : creatrice del Logo
- Chris : tester