public inbox for gentoo-docs-it@lists.gentoo.org
 help / color / mirror / Atom feed
* [gentoo-docs-it] Breviario del traduttore?
@ 2012-02-04 10:27 Daniele Segato
  2012-02-04 14:55 ` HUjuice
  0 siblings, 1 reply; 9+ messages in thread
From: Daniele Segato @ 2012-02-04 10:27 UTC (permalink / raw
  To: gentoo-docs-it

ciao...

ho trovato un po' di tempo stamattina e volevo provare a capire tutto il 
giro, più che altro esserne sicuro

vi chiederei di correggere questa lista e completarla.. mi prenderò 
carico alla fine della discussione di rispondermi a questo messaggio con 
la lista "presa come buona"

poi però sarebbe meglio mettere tutto su una wiki, ne abbiamo una?

cmq.. se no divago... ecco la lista

da quel che ho capito:
1.
vado qui:
http://dev.gentoo.org/~ago/trads-it.xml
o qui
http://gentoo-docs-it.inservibile.org/

(quale dobbiamo usare?)

2.
cerco le traduzioni con pallini rossi / gialli

eventualmente guardo il diff per capire l'entità della traduzione

e ne scelgo una

ignorare i documenti barrati (sono nel bug tracker di gentoo)


3.
vedo il percorso di directory con il file effettivo della traduzione

4.
faccio
git pull origin master

per riallinearmi con il lavorato degli altri

5.
comincio a tradurre e fare commit

6.
faccio

git pull origin master

risolvo eventuali conflitti

7.
controllo che nel frattempo il mio documento non sia finito nel bug 
tracker di gentoo ( http://gentoo-docs-it.inservibile.org/ )

se è così chiedo il da farsi in ML

8.
metto a disposizione di tutti la mia traduzione:
git push origin master

9:
finito?
ho ancora tempo? restart from 1) :P



ora alcune cose che non mi sono chiare

prendo questo che credo di aver capito è quello ufficiale:
http://gentoo-docs-it.inservibile.org/

vedo queste colonne:
* Documento: ci sono delle sigle davanti, hanno qualche significato?
(ho visto che cliccando si va nell'utile dettaglio, bene)

* Palle: suppongo che queste mi diano un'idea dell'allineamento tra la 
versione italiana e quella inglese

ma COME è calcolato il disallineamento?

mi fa pensare che finito di tradurre devo impostare qualcosa del tipo: 
"allineato alla versione inglese XYZ"

non credo di aver capito come leggere le palle

credo che la priorità sia il colore:
verde (nessuna priorità) -> giallo -> arancione -> rosso (più prioritario)

e che il numero di pallini indichi l'entità del lavoro?



* Diff: ok vado al diff con l'inglese

* Versione En: dov'è scritta la versione?
* Versione it: dove la devo scrivere?

in realtà ho visto che queste due, così come le date, sono scritte in un 
commento XML "HEADER"

<!-- $Header: /var/cvsroot/gentoo/xml/htdocs/main/en/contact.xml,v 1.6 
2010/09/10 14:49:41 nightmorph Exp $ -->

quindi è lasciato al traduttore il compito di scrivere correttamente 
quel dato a manina?

la data/ora è in UTC?
il nome utente (nightmorph) va lasciato quello originale?


vedo poi un tag versione nel documento:
<version>3</version>
<date>2010-09-10</date>

questo ha un'altro significato?


* Data En / it -- ok

* Valid: validazione dell'xml

* Pronto: la traduzione è più recente dell'originale inglese (rosso = 
però l'XML non è valido)



se potete spiegarmi meglio il significato dei pallini :)
io tendenzialmente prenderei prima quelli NON VALIDI

poi se sono tutti validi prenderei quelli con "Palle" rosse, quindi 
arancioni, infine gialle





per chiudere oggi mi sono piantato al punto 4) della mia lista:

a quanto pare gitorious è giù dall'altro ieri:
http://blog.gitorious.org/2012/02/02/downtime-today-at-14-cet/

mi ero messo or ora a guardare le cose per capire dove / come tradurre e 
al tentativo di pull mi sono accorto che è giù


voi che ci lavorate da un po': capita spesso o è un caso?

è la prima volta che uso gitorious e non è un buon inizio :P


grazie a tutti per le risposte ;)



^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [gentoo-docs-it] Breviario del traduttore?
  2012-02-04 10:27 [gentoo-docs-it] Breviario del traduttore? Daniele Segato
@ 2012-02-04 14:55 ` HUjuice
  2012-02-05 10:41   ` Daniele Segato
  0 siblings, 1 reply; 9+ messages in thread
From: HUjuice @ 2012-02-04 14:55 UTC (permalink / raw
  To: gentoo-docs-it

Prima di risponderti per punti, faccio un riepilogo.
La pagina ufficiale a cui devi far riferimento è
http://dev.gentoo.org/~ago/trads-it.xml
Dovresti riconoscere lo stile del sito di Gentoo, no?
Quella però fotografa lo stato dei documenti pubblicati.

Oltre a quelli pubblicati ci sono quelli già tradotti e in attesa di
pubblicazione.
Questo "limbo" è a sua volta fatto di due parti:
prima https://gitorious.org/documentazione-italiana-gentoo-linux/documentazione-italiana-gentoo-linux/trees/master/bump
poi https://bugs.gentoo.org/buglist.cgi?list_id=752677;resolution=---;query_format=advanced;bug_status=UNCONFIRMED;bug_status=CONFIRMED;bug_status=IN_PROGRESS;bug_status=VERIFIED;component=[IT];product=Doc%20Translations
infine vengono pubblicati.

Poiché con 200 e passa documenti era complicato orientarsi, io, a
titolo assolutamente personale, ho fatto l'altro strumento, scrivendo
un po' di codice.
L'altro strumento non ha nulla di ufficiale (e si allinea anche con la
relativa lentezza del cron).

Per quanto riguarda i documenti, le regole per la loro gestione sono
http://www.gentoo.org/proj/en/gdp/doc/translators-howto.xml
http://www.gentoo.org/proj/en/gdp/doc/doc-tipsntricks.xml
http://www.gentoo.org/proj/en/gdp/doc/metadoc-guide.xml

Lì trovi tutte le indicazioni sulla struttura e le regole dei documenti.
Personalmente, l'unico elemento che ho trovato poco chiaro è cosa fare
dell'header (che comunque è a carico di qualche hook CVS, credo).
Basta non toccarlo.

Per punti:

> 1.
> vado qui:
> http://dev.gentoo.org/~ago/trads-it.xml
> o qui
> http://gentoo-docs-it.inservibile.org/
>
> (quale dobbiamo usare?)

Devi usare la prima (http://dev.gentoo.org/~ago/trads-it.xml)
confrontandola con quello che è stato già tradotto ed è in attesa
(https://gitorious.org/documentazione-italiana-gentoo-linux/documentazione-italiana-gentoo-linux/trees/master/bump)
e quello che è stato tradotto e in fase di pubblicazione
(https://bugs.gentoo.org/buglist.cgi?list_id=752677;resolution=---;query_format=advanced;bug_status=UNCONFIRMED;bug_status=CONFIRMED;bug_status=IN_PROGRESS;bug_status=VERIFIED;component=[IT];product=Doc%20Translations)

Poiché con 200 e passa documenti era un po' caotico, io ho fatto
l'altro strumento, personale, che io trovo utilissimo ma che ha un
tenore soggettivo.
Dai miei script io vedo che mancano solo 4 documenti:
http://gentoo-docs-it.inservibile.org/index.php?status=todo
Ma ovviamente potrei sbagliare.

> 2.
> cerco le traduzioni con pallini rossi / gialli
>
> eventualmente guardo il diff per capire l'entità della traduzione
>
> e ne scelgo una
>
> ignorare i documenti barrati (sono nel bug tracker di gentoo)

Vale quanto detto sopra. Devi guardare anche il 'bump' di gitorious.

> 3.
> vedo il percorso di directory con il file effettivo della traduzione

> 4.
> faccio
> git pull origin master
>
> per riallinearmi con il lavorato degli altri

> 5.
> comincio a tradurre e fare commit

> 6.
> faccio
>
> git pull origin master
>
> risolvo eventuali conflitti

> 7.
> controllo che nel frattempo il mio documento non sia finito nel bug tracker
> di gentoo ( http://gentoo-docs-it.inservibile.org/ )
>
> se è così chiedo il da farsi in ML

Bugtracker: https://bugs.gentoo.org/buglist.cgi?list_id=752677;resolution=---;query_format=advanced;bug_status=UNCONFIRMED;bug_status=CONFIRMED;bug_status=IN_PROGRESS;bug_status=VERIFIED;component=[IT];product=Doc%20Translations
Vale ancora quanto detto prima.
Se il tuo documento è improvvisamente in bugtracker probabilmente è
perché non hai controllato il bump (o è passato molto tempo da quando
l'hai fatto).

> 8.
> metto a disposizione di tutti la mia traduzione:
> git push origin master

> 9:
> finito?
> ho ancora tempo? restart from 1) :P


> ora alcune cose che non mi sono chiare
>
> prendo questo che credo di aver capito è quello ufficiale:
> http://gentoo-docs-it.inservibile.org/
IL CONTRARIO!! Quello è il risultato di script che mettono insieme i
tre strumenti ufficiali.
Tra l'altro alcuni gli script girano in cron, leggi l'inizio pagina.

> credo che la priorità sia il colore:
> verde (nessuna priorità) -> giallo -> arancione -> rosso (più prioritario)
>
> e che il numero di pallini indichi l'entità del lavoro?
Nella pagina ufficiale c'è scritto tutto:
http://dev.gentoo.org/~ago/trads-it.xml

> * Diff: ok vado al diff con l'inglese
>
> * Versione En: dov'è scritta la versione?
> * Versione it: dove la devo scrivere?
Nel tag <version> che tu stesso citi più avanti.
C'è un secondo numero che non è la versione, ma il commit in CVS e non
è a nostro carico.

> in realtà ho visto che queste due, così come le date, sono scritte in un
> commento XML "HEADER"
>
> <!-- $Header: /var/cvsroot/gentoo/xml/htdocs/main/en/contact.xml,v 1.6
> 2010/09/10 14:49:41 nightmorph Exp $ -->
>
> quindi è lasciato al traduttore il compito di scrivere correttamente quel
> dato a manina?

No. Quei dati vengono scritti da qualche hook del CVS, che non ci compete.

> vedo poi un tag versione nel documento:
> <version>3</version>
> <date>2010-09-10</date>
Qui devi scrivere le stesse cose del documento originale.


> per chiudere oggi mi sono piantato al punto 4) della mia lista:
>
> a quanto pare gitorious è giù dall'altro ieri:
> http://blog.gitorious.org/2012/02/02/downtime-today-at-14-cet/
>
> mi ero messo or ora a guardare le cose per capire dove / come tradurre e al
> tentativo di pull mi sono accorto che è giù
>
>
> voi che ci lavorate da un po': capita spesso o è un caso?
>
> è la prima volta che uso gitorious e non è un buon inizio :P
>
>
> grazie a tutti per le risposte ;)
Era la prima volta.

Ciao,
Sergio


HUjuice
mooodcast.net



^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [gentoo-docs-it] Breviario del traduttore?
  2012-02-04 14:55 ` HUjuice
@ 2012-02-05 10:41   ` Daniele Segato
  2012-02-05 22:30     ` HUjuice
  0 siblings, 1 reply; 9+ messages in thread
From: Daniele Segato @ 2012-02-05 10:41 UTC (permalink / raw
  To: gentoo-docs-it

On 02/04/2012 03:55 PM, HUjuice wrote:
> Prima di risponderti per punti, faccio un riepilogo.
> La pagina ufficiale a cui devi far riferimento è
> http://dev.gentoo.org/~ago/trads-it.xml
> Dovresti riconoscere lo stile del sito di Gentoo, no?

mi è chiaro che la pagina ufficiale sia quella, mi era chiaro anche prima

ma visto che hanno più o meno le stesse informazioni non era così 
assurdo pensare che il tuo script potesse essere usato da tutti qui 
"ufficiosamente"

ho espresso male la domanda, si, ma non sono ancora arteriosclerotico, 
spero :P

sia chiaro.. ho aperto questo thread per esser certo della procedura e 
per renderla più chiara anche a tutti i nuovi che, come me, sono stati 
accalappiati :P da Ago


> Quella però fotografa lo stato dei documenti pubblicati.
>
> Oltre a quelli pubblicati ci sono quelli già tradotti e in attesa di
> pubblicazione.
> Questo "limbo" è a sua volta fatto di due parti:
> prima https://gitorious.org/documentazione-italiana-gentoo-linux/documentazione-italiana-gentoo-linux/trees/master/bump
> poi https://bugs.gentoo.org/buglist.cgi?list_id=752677;resolution=---;query_format=advanced;bug_status=UNCONFIRMED;bug_status=CONFIRMED;bug_status=IN_PROGRESS;bug_status=VERIFIED;component=[IT];product=Doc%20Translations
> infine vengono pubblicati.

ok:
0: documento datato
1: tradotto e messo in bump
2: aperto ticket su bug.gentoo.org per richiederne la pubblicazione
3. pubblicato --> back to 0 quando qualcuno aggiorna l'originale inglese

manca qualche passaggio?

> Poiché con 200 e passa documenti era complicato orientarsi, io, a
> titolo assolutamente personale, ho fatto l'altro strumento, scrivendo
> un po' di codice.

si questo mi era chiaro

> L'altro strumento non ha nulla di ufficiale (e si allinea anche con la
> relativa lentezza del cron).

che non abbia nulla di ufficiale OK, ma le domande su come leggerlo mi 
servivano per poterlo comunque sfruttare per estrarne informazioni utili.



> Per quanto riguarda i documenti, le regole per la loro gestione sono
> http://www.gentoo.org/proj/en/gdp/doc/translators-howto.xml

chi è il nostro Lead translator?

alla pagina indicata c'è Davide Cendron che però so essersi dimesso 
(dalla lettura degli archivi della ML)

Davide aveva indicato un'altra persona come responsabile (non ricordo il 
nome), mi par però di capire che non è qui dentro / non si occupa della 
traduzione italiana?


forse la domanda dovrebbe essere "chi è il Follow-up" del Lead Translator?

se ho ben capito non abbiamo ne l'uno ne l'altro ed infatti non abbiamo 
qualcuno con l'accesso a CSV, per questa ragione passiamo dal bug tracker


altra cosa: non mi era stato detto di iscrivermi alla ML del CSV per 
essere informato delle traduzioni inglesi che vengono committate...
anche se la pagina lo consiglia suppongo che noi possiamo farne a meno 
grazie all'esistenza di:
http://dev.gentoo.org/~ago/trads-it.xml

o del tuo script in alternativa

> http://www.gentoo.org/proj/en/gdp/doc/doc-tipsntricks.xml

ok
qui ci sono le istruzioni "tecniche"
ottima reference

voi che programma usate come editor degli XML?


(ps: sapete che si possono definire degli hook su git che rifiutano ogni 
push che contenga xml non validi? non so se gitorious te lo lasci fare.. 
ma in locale si può certamente ottenere)



> http://www.gentoo.org/proj/en/gdp/doc/metadoc-guide.xml
>
> Lì trovi tutte le indicazioni sulla struttura e le regole dei documenti.
> Personalmente, l'unico elemento che ho trovato poco chiaro è cosa fare
> dell'header (che comunque è a carico di qualche hook CVS, credo).
> Basta non toccarlo.

rispetto all'header
si effettivamente non è chiaro

nessuno ha mai chiesto spiegazioni?

>> credo che la priorità sia il colore:
>> verde (nessuna priorità) ->  giallo ->  arancione ->  rosso (più prioritario)
>>
>> e che il numero di pallini indichi l'entità del lavoro?
> Nella pagina ufficiale c'è scritto tutto:
> http://dev.gentoo.org/~ago/trads-it.xml

ok perfetto sono gli stessi :)

>> * Diff: ok vado al diff con l'inglese
>>
>> * Versione En: dov'è scritta la versione?
>> * Versione it: dove la devo scrivere?
> Nel tag<version>  che tu stesso citi più avanti.
> C'è un secondo numero che non è la versione, ma il commit in CVS e non
> è a nostro carico.

k!

>> in realtà ho visto che queste due, così come le date, sono scritte in un
>> commento XML "HEADER"
>>
>> <!-- $Header: /var/cvsroot/gentoo/xml/htdocs/main/en/contact.xml,v 1.6
>> 2010/09/10 14:49:41 nightmorph Exp $ -->
>>
>> quindi è lasciato al traduttore il compito di scrivere correttamente quel
>> dato a manina?
>
> No. Quei dati vengono scritti da qualche hook del CVS, che non ci compete.

k!


>> vedo poi un tag versione nel documento:
>> <version>3</version>
>> <date>2010-09-10</date>
> Qui devi scrivere le stesse cose del documento originale.

k!

non ci sono tag "data di traduzione" ?


ciao



^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [gentoo-docs-it] Breviario del traduttore?
  2012-02-05 10:41   ` Daniele Segato
@ 2012-02-05 22:30     ` HUjuice
  2012-02-05 22:51       ` Daniele Segato
  0 siblings, 1 reply; 9+ messages in thread
From: HUjuice @ 2012-02-05 22:30 UTC (permalink / raw
  To: gentoo-docs-it

> mi è chiaro che la pagina ufficiale sia quella, mi era chiaro anche prima
C'è che questa è una mailing list che viene letta da molte persone e
conviene non usare termini che possono confondere.

> ma visto che hanno più o meno le stesse informazioni non era così assurdo
> pensare che il tuo script potesse essere usato da tutti qui "ufficiosamente"
Certo, perciò lo condivido. L'importante è sapere con cosa si sta lavorando.

> sia chiaro.. ho aperto questo thread per esser certo della procedura e per
> renderla più chiara anche a tutti i nuovi che, come me, sono stati
> accalappiati :P da Ago
Non so come siete stati «accalappiati» :)
È vero che noi abbiamo un po' più di esperienza, ma siamo qua.

> ok:
> 0: documento datato
> 1: tradotto e messo in bump
> 2: aperto ticket su bug.gentoo.org per richiederne la pubblicazione
> 3. pubblicato --> back to 0 quando qualcuno aggiorna l'originale inglese
>
> manca qualche passaggio?
No. Ci sei... Tra l'altro tu devi occuparti solo del punto 1.

Poi c'è quel discorso di tradurre man e messaggistica dei programmi.
Per quelli chiedi ad ago.

> che non abbia nulla di ufficiale OK, ma le domande su come leggerlo mi
> servivano per poterlo comunque sfruttare per estrarne informazioni utili.
Nello strumento non ufficiale ci sono tre colonne di pallini.
La prima ("Palle") sono le palle della pagina ufficiale, ottenuta
confrontando lo stato dei documenti pubblicai in inglese e in
italiano.
La second ("Valid") è ottenuta dai documenti in bump (che copio a mano
quando vedo un push in gitorious) e verificando la validità dell'XML e
la corrispondenza di data e versione col documento in inglese.
La seconda ("Pronto") è ottenuta guardando le prime due e il bugzilla.
In soldoni, se c'è la palla verde vuol dire che il documento è pronto
per il bump (sempre secondo i criteri con cui ho fatto gli script).

>> Per quanto riguarda i documenti, le regole per la loro gestione sono
>> http://www.gentoo.org/proj/en/gdp/doc/translators-howto.xml
>
>
> chi è il nostro Lead translator?
Queste cose può dirtele meglio ago, che se ho ben capito è all'interno
di un percorso.
Il reclutamento è complesso.

> alla pagina indicata c'è Davide Cendron che però so essersi dimesso (dalla
> lettura degli archivi della ML)
>
> Davide aveva indicato un'altra persona come responsabile (non ricordo il
> nome), mi par però di capire che non è qui dentro / non si occupa della
> traduzione italiana?
Se ti riferisci a Joshua Saddler, si tratta "semplicemente" del Team
Leader del progetto generale delle traduzioni. Ne manca uno specifico
per la lingua italiana:
http://www.gentoo.org/proj/en/gdp/international.xml

> forse la domanda dovrebbe essere "chi è il Follow-up" del Lead Translator?
>
> se ho ben capito non abbiamo ne l'uno ne l'altro ed infatti non abbiamo
> qualcuno con l'accesso a CSV, per questa ragione passiamo dal bug tracker
Yes, al momento... Ma c'è ago che si adopera.

> altra cosa: non mi era stato detto di iscrivermi alla ML del CSV per essere
> informato delle traduzioni inglesi che vengono committate...
> anche se la pagina lo consiglia suppongo che noi possiamo farne a meno
> grazie all'esistenza di:
> http://dev.gentoo.org/~ago/trads-it.xml
>
> o del tuo script in alternativa
Quello che trovi più comodo. A me piacerebbe anche fare un feed (RSS/Atom).

>> http://www.gentoo.org/proj/en/gdp/doc/doc-tipsntricks.xml
>
>
> ok
> qui ci sono le istruzioni "tecniche"
> ottima reference
>
> voi che programma usate come editor degli XML?
Io personalmente no.
Uso 'kate', in KDE, che è un editor leggero ma delizioso per molte
cose, ma non particolarmente utile in questo caso. Oppure uso vi.

> (ps: sapete che si possono definire degli hook su git che rifiutano ogni
> push che contenga xml non validi? non so se gitorious te lo lasci fare.. ma
> in locale si può certamente ottenere)
Questa è un'ottima idea.
Peccato che gitorious non ci conceda altrettanto.
Però potrebbe essere carino e semplice scriverne uno pre-commit e condividerlo.
In quattroequattrotto ho scritto questo che mi sembra funzionare:
.git/hooks/pre-commit
------------------------------
#!/bin/sh
for i in $(git diff --name-only); do
        if ! xmllint --valid --noout $i; then
                echo "Errori XML nel file $i"
                exit 0
        fi
done
-------
Secondo te si può migliorare?

> rispetto all'header
> si effettivamente non è chiaro
>
> nessuno ha mai chiesto spiegazioni?
Abbiamo tradotto tutto lasciano quel commento com'era.

Ciao ciao,
Sergio


HUjuice
mooodcast.net



^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [gentoo-docs-it] Breviario del traduttore?
  2012-02-05 22:30     ` HUjuice
@ 2012-02-05 22:51       ` Daniele Segato
  2012-02-05 23:32         ` HUjuice
  0 siblings, 1 reply; 9+ messages in thread
From: Daniele Segato @ 2012-02-05 22:51 UTC (permalink / raw
  To: gentoo-docs-it

On 02/05/2012 11:30 PM, HUjuice wrote:
>> (ps: sapete che si possono definire degli hook su git che rifiutano ogni
>> push che contenga xml non validi? non so se gitorious te lo lasci fare.. ma
>> in locale si può certamente ottenere)
> Questa è un'ottima idea.
> Peccato che gitorious non ci conceda altrettanto.
> Però potrebbe essere carino e semplice scriverne uno pre-commit e condividerlo.
> In quattroequattrotto ho scritto questo che mi sembra funzionare:
> .git/hooks/pre-commit
> ------------------------------
> #!/bin/sh
> for i in $(git diff --name-only); do
>          if ! xmllint --valid --noout $i; then
>                  echo "Errori XML nel file $i"
>                  exit 0
>          fi
> done
> -------
> Secondo te si può migliorare?


exit 0 mi pare dica "tutto ok"

ti direi che farei l'exit alla fine del ciclo se ci sono stati errori in 
modo da controllare sempre tutti i file

mi documento sugli hook che non ho mai usato intensivamente e ti faccio 
sapere se c'è altro che si può fare




^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [gentoo-docs-it] Breviario del traduttore?
  2012-02-05 22:51       ` Daniele Segato
@ 2012-02-05 23:32         ` HUjuice
  2012-02-06  9:44           ` Daniele Segato
  0 siblings, 1 reply; 9+ messages in thread
From: HUjuice @ 2012-02-05 23:32 UTC (permalink / raw
  To: gentoo-docs-it

>> .git/hooks/pre-commit
>> ------------------------------
>> #!/bin/sh
>> for i in $(git diff --name-only); do
>>         if ! xmllint --valid --noout $i; then
>>                 echo "Errori XML nel file $i"
>>                 exit 0
>>         fi
>> done
>> -------
>> Secondo te si può migliorare?

>
> exit 0 mi pare dica "tutto ok"

Ovviamente hai ragione. E poi manca un --cached (dentro la
sostituzione di comando).
.git/hooks/pre-commit
------------------------------
#!/bin/sh
for i in $(git diff --cached --name-only); do
        if ! xmllint --valid --noout $i; then
                echo "Errori XML nel file $i"
                exit 1
        fi
done
--------------------------------
Un check globale, come dici tu, è anche meglio.

C'è anche da dire che questo controllo potrebbe essere troppo serrato.
Un commit si può fare anche a metà lavoro (ma allora c'è git commit
--no-verify).
È proprio per queste cose che troverei utile un piccolo host di
lavoro, invece di gitorious.

Sergio


HUjuice
mooodcast.net



^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [gentoo-docs-it] Breviario del traduttore?
  2012-02-05 23:32         ` HUjuice
@ 2012-02-06  9:44           ` Daniele Segato
  2012-02-06  9:53             ` Daniele Segato
  2012-02-06 10:19             ` HUjuice
  0 siblings, 2 replies; 9+ messages in thread
From: Daniele Segato @ 2012-02-06  9:44 UTC (permalink / raw
  To: gentoo-docs-it

On 02/06/2012 12:32 AM, HUjuice wrote:
>>> .git/hooks/pre-commit
>>> ------------------------------
>>> #!/bin/sh
>>> for i in $(git diff --name-only); do
>>>          if ! xmllint --valid --noout $i; then
>>>                  echo "Errori XML nel file $i"
>>>                  exit 0
>>>          fi
>>> done
>>> -------
>>> Secondo te si può migliorare?
>
>>
>> exit 0 mi pare dica "tutto ok"
>
> Ovviamente hai ragione. E poi manca un --cached (dentro la
> sostituzione di comando).
> .git/hooks/pre-commit
> ------------------------------
> #!/bin/sh
> for i in $(git diff --cached --name-only); do
>          if ! xmllint --valid --noout $i; then
>                  echo "Errori XML nel file $i"
>                  exit 1
>          fi
> done
> --------------------------------
> Un check globale, come dici tu, è anche meglio.


Allora..

prendendo dall'esempio di hook che ha git lo cambierei così:


#!/bin/sh
#
# XML validation of files that are about to be committed.
# Called by "git commit" with no arguments.  The hook should
# exit with non-zero status after issuing an appropriate message if
# it wants to stop the commit.

if git rev-parse --verify HEAD >/dev/null 2>&1
then
         against=HEAD
else
         # Initial commit: diff against an empty tree object
         against=4b825dc642cb6eb9a060e54bf8d69288fbee4904
fi

# If you want to allow non-ascii filenames set this variable to true.
allownonascii=$(git config hooks.allownonascii)

# Cross platform projects tend to avoid non-ascii filenames; prevent
# them from being added to the repository. We exploit the fact that the
# printable range starts at the space character and ends with tilde.
if [ "$allownonascii" != "true" ] &&
         # Note that the use of brackets around a tr range is ok here, (it's
         # even required, for portability to Solaris 10's /usr/bin/tr), 
since
         # the square bracket bytes happen to fall in the designated range.
         test "$(git diff --cached --name-only --diff-filter=A -z $against |
           LC_ALL=C tr -d '[ -~]\0')"
then
         echo "Error: Attempt to add a non-ascii file name."
         echo
         echo "This can cause problems if you want to work"
         echo "with people on other platforms."
         echo
         echo "To be portable it is advisable to rename the file ..."
         echo
         echo "If you know what you are doing you can disable this"
         echo "check using:"
         echo
         echo "  git config hooks.allownonascii true"
         echo
         exit 1
fi

XML_VALIDATION=0;
TMP_FILE="/tmp/tmp_check.xml"
TMP_LOG="/tmp/tmp_check.log"
rm -f "$TMP_FILE" "$TMP_LOG" 2> /dev/null

for file in ${git diff-index --cached $against};
do
	filename=${basename "$file"}
	extension=${filename##*.}
	if [[ extension = 'xml' ]] ; then
		echo "checking XML: $file ..." >> "$TMP_LOG"
		# copy the indexed version in a temporary file
		git show :"$file" > "$TMP_FILE"
		xmllint --valid --noout "$TMP_FILE" 2>> "$TMP_LOG"
		RESULT=$?
		if [[ ! $RESULT ]] ; then
			echo "XML non valido: $file"
			XML_VALIDATION=2;
		fi;
		rm -f "$TMP_FILE"
	fi
done;

if [[ XML_VALIDATION -ne 0 ]] ; then
	LOG_FILE="/tmp/git-commit-hook-log_`date '+%y%m%d%H%M%S'`.log"
	mv "$TMP_FILE" "$LOG_FILE"
	echo "See $LOG_FILE for details"
	echo "If you want to ignore this errors re commit with --no-verify option"
	exit $XML_VALIDATION
else
	rm -f "$TMP_LOG" 2> /dev/null
	exit 0;
fi





> C'è anche da dire che questo controllo potrebbe essere troppo serrato.
> Un commit si può fare anche a metà lavoro (ma allora c'è git commit
> --no-verify).

si... vero

si potrebbe usare un pre-push hook

la differenza nello script sopra è il calcolo dell'${against}
mi dicevano di usare "@{u}" al posto di "HEAD"

e subito prima fare un git fetch per essere sicuri di avere l'ultimo 
aggiornamento

lo dicono qui:
http://fclose.com/p/linux/man/7-gitrevisions/
git help gitrevisions


non correlato ma per completezza:
http://book.git-scm.com/4_git_treeishes.html

> È proprio per queste cose che troverei utile un piccolo host di
> lavoro, invece di gitorious.

si può anche creare un altro mirror, magari su github per non restare 
appiedati se uno dei due va giù...

il problema è che poi sta a noi tenere i mirror in sincrono :)



^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [gentoo-docs-it] Breviario del traduttore?
  2012-02-06  9:44           ` Daniele Segato
@ 2012-02-06  9:53             ` Daniele Segato
  2012-02-06 10:19             ` HUjuice
  1 sibling, 0 replies; 9+ messages in thread
From: Daniele Segato @ 2012-02-06  9:53 UTC (permalink / raw
  To: gentoo-docs-it

On 02/06/2012 10:44 AM, Daniele Segato wrote:
> if [[ XML_VALIDATION -ne 0 ]] ; then
>      LOG_FILE="/tmp/git-commit-hook-log_`date '+%y%m%d%H%M%S'`.log"
>      mv "$TMP_FILE" "$LOG_FILE"

errore:
mv "$TMP_LOG" "LOG_FILE"

>      echo "See $LOG_FILE for details"
>      echo "If you want to ignore this errors re commit with --no-verify
> option"
>      exit $XML_VALIDATION
> else
>      rm -f "$TMP_LOG" 2> /dev/null
>      exit 0;
> fi




^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [gentoo-docs-it] Breviario del traduttore?
  2012-02-06  9:44           ` Daniele Segato
  2012-02-06  9:53             ` Daniele Segato
@ 2012-02-06 10:19             ` HUjuice
  1 sibling, 0 replies; 9+ messages in thread
From: HUjuice @ 2012-02-06 10:19 UTC (permalink / raw
  To: gentoo-docs-it

> si potrebbe usare un pre-push hook
Il fatto è che il 'pre-push' non esiste, se ho capito bene.
Gli hook intervengono quando ci sono cambiamenti nel repository.
E infatti, come dicevi all'inizio, si può intervenire dall'altro lato,
quando il push viene ricevuto.
Ma non si può perché siamo in Gitorious.

> si può anche creare un altro mirror, magari su github per non restare
> appiedati se uno dei due va giù...
>
> il problema è che poi sta a noi tenere i mirror in sincrono :)
Non so bene che pensare.
In queste cose sono abituato al lavoro, dove ho almeno un'utenza sulle
macchine (quando non le amministro io stesso).
Il risultato è che viene fatto più lavoro manuale, che è fonte di
fatica e di errori.

Però ormai il grosso della fatica nello smazzarsi i file sembra fatto.
Vedremo come andiamo a regime...

Comunque il tuo script lo prendo.
Si può mettere nel wiki.

Sergio


HUjuice
mooodcast.net



^ permalink raw reply	[flat|nested] 9+ messages in thread

end of thread, other threads:[~2012-02-06 10:20 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2012-02-04 10:27 [gentoo-docs-it] Breviario del traduttore? Daniele Segato
2012-02-04 14:55 ` HUjuice
2012-02-05 10:41   ` Daniele Segato
2012-02-05 22:30     ` HUjuice
2012-02-05 22:51       ` Daniele Segato
2012-02-05 23:32         ` HUjuice
2012-02-06  9:44           ` Daniele Segato
2012-02-06  9:53             ` Daniele Segato
2012-02-06 10:19             ` HUjuice

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox