IT:JOSM/Plugins/Reverter
Reverter è un plugin per ripristinare i gruppi di modifiche .
il Problema
Usare gli script di ripristino non è sempre conveniente. In molti casi è utile fare un anteprima e verificare le modifiche prima di caricare il changeset di ripristino.
Regolamento
Qualsiasi cosa scritta nella sezione "Agire in modo responsabile" e Modifiche Automatiche si applicano qui. Il plugin non è pensato per essere usato in guerre di editing o per azioni distruttive.
Non ripristinare cambiamenti fatti da altri utenti senza prima averli contattati in modo educato e dando loro il tempo sufficiente per rispondere (minimo una settimana). I dati danneggiati si possono sistemare facilmente, ma una comunità distrutta non è così facile da ricomporre. :)
Non bisogna essere tentati di ripristinare prematuramente, giusto per evitare potenziali conflitti con le modifiche di altri di altri utenti! Quando si è in dubbio, discutete della cosa nella mailing list prima di agire.
Come si usa
- Scaricare l'area relativa al changeset da ripristinare. Se dimenticate alcuni oggetti, non è un problema - verranno scaricati automaticamente. Potete anche iniziare con un livello vuoto. (File -> Nuovo Livello)
- Dopo aver installato il plugin e aver riavviato JOSM, dovreste vedere una nuova voce di menù Cronologia -> Ripristina gruppo di modifiche. Selezionatelo e inserite l'id del changeset da ripristinare. Per un ripristino completo, lasciare le opzioni predefinite.
- Il plugin creerà le modifiche che ripristineranno le azioni eseguite dal precedente changeset. Controllate il risultato.
- Caricatelo. Nella finestra di dialogo del caricamento potete controllare per l'ultima volta il riassunto dei cambiamenti fatti.
Ripristino parziale
Se il changeset era per lo più corretto, but broke a view objects, si può fare un ripristino parziale. Ci sono due modi per fare un ripristino parziale:
- Eseguire un ripristino completo come spiegato più in alto, ma senza caricare i dati sul server. Selezionate gli oggetti di cui vorreste fare il ripristino e cliccate sul menù File -> Carica selezione.
- Inizialmente, scaricate gli oggetti da ripristinare, selezionateli e usate l'opzione Ripristinare solo la selezione nella finestra di dialogo di reverter.
In entrambi i casi, per ripristinare la geometria di una strada, dovete selezionare sia la strada che i suoi nodi. (Perchè
una strada ha salvato una lista di ID dei nodi, ma non la loro posizione.) Si può cercare (Ctrl-F) per l'espressione selected | child (selected type:way)
per aggiungere i nodi di tutte le strade selezionate alla selezione.
Ripristini puliti e sporchi
Un insieme di modifiche è pulito, se non ci sono modifiche dopo di esso (p.e. fatti da altri utenti), altrimenti è considerato sporco. Il plugin Reverter è in grado di gestire entrambi i ripristini sia puliti che sporchi. Nel caso in cui ci sia una modifica successiva da un altro utente, il caricamento fallisce e viene creato un conflitto. E' possibile risolvere questi conflitti con la finestra di dialogo dei conflitti standard di JOSM e fare il caricamento successivamente.
Ripristinare più insiemi di modifiche in un caricamento
E' possibile annullare insiemi di modifiche multipli successivi in un unico caricamento. Basta ripristinarli uno dopo l'altro. (Quelli più recenti per primi)
(Questo è l'uso avanzato, assicuratevi di sapere cosa state facendo.)
Come funziona ?
Il plugin Reverter scarica l'insieme di modifiche dal server. Recupera tutti gli oggetti relativi all'insieme di modifiche. Non scaricherà la versione attuale dell'oggetto, ma la versione immediatamente successiva al changeset da ripristinare. Poi modifica automaticamente la copia locale degli oggetti, in questo modo l'insieme di modifiche viene annullato. Queste modifiche vengono tracciate da JOSM nello stesso modo in cui salva le modifiche fatte manualmente
In particolare:
- Se l'insieme di modifiche da ripristinare aggiunge un tag ad un oggetto esistente, il tag viene rimosso dal plugin reverter.
- Se cancella gli oggetti, il plugin annullerà l'eliminazione (p.e. rimuove il flag cancellato). L'id dell'oggetto rimane lo stesso e la cronologia dell'oggetto è preservata.
- Se crea nuovi oggetti (p.e. duplicati), verranno cancellati. In questo caso non avrete nessuna segnalazione a video. (Ma è possibile vedere la cancellazione nella schermata di caricamento.)
Il caricamento non è speciale in alcun modo, aumenterà la versione di ogni oggetto soggetto al ripristino e il processo di ripristino sarà visibile nella cronologia.
Problemi
Si prega di inviare una sengnalazione di errore, se avete qualsiasi problema con questo Plugin. Se non si dovesse presentare un messaggio "Precondition failed" dal server, dovrebbe essere un errore da segnalare. Quando scrivete un ticket di errore, cercate di ricordare i passaggi che avete fatto e segnalate anche l'id del changeset.
Sviluppo
Scritto da User:Upliner
Codice sorgente su Git: http://github.com/Upliner/josm-reverter