DokuWiki

It's better when it's simple

Strumenti Utente

Strumenti Sito


it:devel:changelog

Changelog

Procedura gestione "changelog"

Il changelog viene salvato in file di changelog per ogni pagina, con una cache delle modifiche recenti. Le modifiche recenti sono salvate in /data/meta/_dokuwiki.changes e compattati ogni giorno. I changelog per pagina sono conservati nei file /data/meta/<namespace>/<pageid>.changes. Questo log delle modifiche ti permette di registrare tutto il ciclo di creazione, eliminazine e revisione.

Formato Changelog

Il changelog viene salvato come file di testo puro con una registrazione per ogni riga. Ogni riga del changelog contiene un elenco di campi separati da spazi (il tab della tastiera).

<date>\t<ip>\t<type>\t<id>\t<user>\t<sum>\t<extra>\n

<date>  = Ora Unix
<ip>    = Indirizzo IP IPv4 oppure IPv6
<type>  = Tipo di riga del log (vedi sotto)
<id>    = ID della pagina DokuWiki
<user>  = Nome utente di DokuWiki (se loggato)
<sum>   = Modifica sommario o motivo dell'azione
<extra> = Campo per dati specifici di un tipo arbitrario.
          Nota: NON può contenere i caratteri "\t" oppure "\n".

Tipo di righe

Il tipo di righe è una string a di lunghezza arbitraria. Tutti i valori del singolo carattere <type> sono riservati per il codice di Dokuwiki, mentre i valori del multi carattere <type> sono consentiti per i tipi di righe di log esperimentali e definiti dall'utente. Da notare che <type> è case sensitive. Il campo <type> viene analizzato con === e non con substr.

Tipi di codici

Tipo Nome Extra Note
C Creazione
E Modifica
e Modifica minore Solo disponibile agli utenti loggati
D Cancellazione Il changelog e attic mantegono la pagina della cronologia
R Ripristino Revisione modificata per ripristinare la pagina Gli utenti possono modificare le revisioni che loro stessi hanno cominciato

Conservazione del Changelog

NON eliminare la directory /data/meta. Ora contiene le informazioni di changelog che non possono essere rigenerate da altri dati del wiki.

Ricostruzione del Changelog

Nel caso accidentalmente si stato eliminato il file <dokuwiki>/meta/_dokuwiki.changes vedi Tips & Tricks: Rebuilding Your Wiki Change Log.

Importazione

:!: La seguente informazione ti interessa solo se hai aggiornato Dokuwiki da una versione più vecchia della 2006-11-06! :!:

Il vecchio changelog viene importato automaticamente se esiste.

Nota:

I wiki molto grandi che girano sui server con PHP in modalità “safe mode” possono ricevere un messaggi relativo al tempo massimo di esecuzione visto che non può essere incrementato nel codice. Se necessario, l'importazione può essere fatta su un altro server che non sia in modalità “safe mode”. La directory /data/meta con il changelog importato può essere copiato nel server in modalità “safe mode”.

Nota:

Sui wiki con pochi aggiornamenti $conf['recent_days'] (il valore predefinito è di 7 giorni) si dovrebbere passare ad un valore più appropriato per avere la pagina delle “Modifiche recenti” più popolata.

L'importazione di un vecchio changelog può richiedere molta più memoria del solito limite di 8M di PHP. Se l'importazione fallisce, controllare il log di errore nel server web come un errore di PHP, qualcosa del tipo Errore fatale: dimensione della memoria permessa di 8388608 bytes superata. Se si vede questo, aumentare temporaneamente il limite della memoria nel file php.ini di PHP, riavviare il server web e riprovare nuovamente l'importazione.

Verifica importazione

L'azione “do=check” indicherà se esiste un vecchio changelog e se si stata importando oppure è stato importato. Se l'importazione eccede il tempo massimo, “do=check” dovrebbe mostrare un avviso che l'importazione non è stata completata. Riprovare nuovamete l'importazione eliminando i file /data/meta/_dokuwiki.changes e /data/meta/_dokuwiki.changes_*.

Dopo che il vecchio changelog è stato importato con successo, l'azione “do=check” potrebbe ancora indicare che un vecchio file changelog è presente. Questo è normale e previsto dal programma. Ma se viene ancora mostrato l'errore “Il plugin Importoldchangelog non è stato disabilitato dopo l'importazione” ogni volta che si esegue “do=check”, si dovra disabilitare il plugin utilizzando il menu Gestione extension.

it/devel/changelog.txt · Ultima modifica: 2018-05-30 20:01 da Klap-in

Ad eccezione da dove è diversamente indicato, il contenuto di questo wiki è soggetto alla seguente licenza: CC Attribution-Share Alike 4.0 International
CC Attribution-Share Alike 4.0 International Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki