[Python] [OT] Git: come gestite sviluppo e produzione

2013-05-15 Per discussione Diego Barrera

Scusate l'OT :)
ma siccome date sempre buoni consigli...
ho un software in produzione; devo sviluppare nuove
funzionalita'; vorrei avere sulla stessa macchina sia
la versione di sviluppo che quella in produzione.
Come la gestisco con git?
Gia' utilizzo git per sviluppare, ma finora ho sempre
eseguito push su un server git remoto.. per estensione
se mi configuro un server git "locale" non cambia niente,
ma se c'e' una soluzione piu' veloce la preferirei.

Grazie 1k

PS: datemi una mano che gia' mi rode che devo scrivere
in PHP.. vedo  ovunque e gia' so che mi scordero' tutti
i punti e virgola! :(
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] [OT] Git: come gestite sviluppo e produzione

2013-05-15 Per discussione Carlos Catucci
ma siccome date sempre buoni consigli...

Si sa che la gente da buoni consigli quando non puo' pu' dare il cattivo
esempio
(F. De Andre' - Bocca di rosa)

ho un software in produzione; devo sviluppare nuove
> funzionalita'; vorrei avere sulla stessa macchina sia
> la versione di sviluppo che quella in produzione.
> Come la gestisco con git?
>

Io uso di solito Bazar, ma alla fine e' slo stesso. Un trunk di sviluppo
con un branch per la produzione e magari anche uno per il testing. Dipende
molto da quante forze sono impegnate nel progetto. Se chi esegue i test e'
(come dovrebbe) una persona (o piu' persone per progetti real humongous)
differente da chi sviluppa, si rende indispensabile. Se il developer fa
anche test ecco che non e' indispensabile (forse).


> PS: datemi una mano che gia' mi rode che devo scrivere
> in PHP.. vedo  ovunque e gia' so che mi scordero' tutti
> i punti e virgola! :(
>

Se i $ sono collegati al compenso dovresti essere felice. :P

Carlos
-- 
..y sobre todo, sean siempre capaces de sentir en lo más hondo cualquier
injusticia cometida contra cualquiera en cualquier parte del mundo. Es la
cualidad más linda de un revolucionario." -  Ernesto Guevara de la Serna
Lynch
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] [OT] Git: come gestite sviluppo e produzione

2013-05-15 Per discussione Luca Bacchi
http://nvie.com/posts/a-successful-git-branching-model/


Il giorno 15 maggio 2013 12:57, Carlos Catucci
ha scritto:

> ma siccome date sempre buoni consigli...
>
> Si sa che la gente da buoni consigli quando non puo' pu' dare il cattivo
> esempio
> (F. De Andre' - Bocca di rosa)
>
> ho un software in produzione; devo sviluppare nuove
>> funzionalita'; vorrei avere sulla stessa macchina sia
>> la versione di sviluppo che quella in produzione.
>> Come la gestisco con git?
>>
>
> Io uso di solito Bazar, ma alla fine e' slo stesso. Un trunk di sviluppo
> con un branch per la produzione e magari anche uno per il testing. Dipende
> molto da quante forze sono impegnate nel progetto. Se chi esegue i test e'
> (come dovrebbe) una persona (o piu' persone per progetti real humongous)
> differente da chi sviluppa, si rende indispensabile. Se il developer fa
> anche test ecco che non e' indispensabile (forse).
>
>
>> PS: datemi una mano che gia' mi rode che devo scrivere
>> in PHP.. vedo  ovunque e gia' so che mi scordero' tutti
>> i punti e virgola! :(
>>
>
> Se i $ sono collegati al compenso dovresti essere felice. :P
>
> Carlos
> --
> ..y sobre todo, sean siempre capaces de sentir en lo más hondo cualquier
> injusticia cometida contra cualquiera en cualquier parte del mundo. Es la
> cualidad más linda de un revolucionario." -  Ernesto Guevara de la Serna
> Lynch
>
> ___
> Python mailing list
> Python@lists.python.it
> http://lists.python.it/mailman/listinfo/python
>
>
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] [OT] Git: come gestite sviluppo e produzione

2013-05-15 Per discussione Diego Barrera

Il 15/05/2013 12:57, Carlos Catucci ha scritto:

ma siccome date sempre buoni consigli...

Si sa che la gente da buoni consigli quando non puo' pu' dare il 
cattivo esempio

(F. De Andre' - Bocca di rosa)


no dai, e' vero.. sempre ottimi consigli!


ho un software in produzione; devo sviluppare nuove
funzionalita'; vorrei avere sulla stessa macchina sia
la versione di sviluppo che quella in produzione.
Come la gestisco con git?


Io uso di solito Bazar, ma alla fine e' slo stesso. Un trunk di 
sviluppo con un branch per la produzione e magari anche uno per il 
testing. Dipende molto da quante forze sono impegnate nel progetto. Se 
chi esegue i test e' (come dovrebbe) una persona (o piu' persone per 
progetti real humongous) differente da chi sviluppa, si rende 
indispensabile. Se il developer fa anche test ecco che non e' 
indispensabile (forse).



Mi sono spiegato male..
A parte la struttura dei rami, non ho capito come posso avere in locale
l'equivalente del comando "git clone" senza mettere su un server;

ho pensato una cosa brutta brutta :/
ma mesa' che.. je vado de cp!   :D

produzione/
.git
root_software/

sviluppo/
.git
root_software/

quando ho una versione stabile in "sviluppo" la copio in "produzione"
e faccio il commit dei cambiamenti rendendo tutto disponibile agli
utenti.



Se i $ sono collegati al compenso dovresti essere felice. :P


La speranza e' l'ultima a morire :D
Grazie
ciao diego
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] [OT] Git: come gestite sviluppo e produzione

2013-05-15 Per discussione Daniele Varrazzo

On 2013-05-15 12:54, Diego Barrera wrote:


Mi sono spiegato male..
A parte la struttura dei rami, non ho capito come posso avere in 
locale

l'equivalente del comando "git clone" senza mettere su un server;


Anche ora ti sei spiegato male. Ma comincio a sospettare che tu pensi 
che git abbia bisogno di un server, che non è vero. In produzione puoi 
fare "git clone" o "git pull" usando qualunque remote che puoi 
raggiungere via ssh.



--
Daniele Varrazzo - Develer S.r.l.
http://www.develer.com
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] [OT] Git: come gestite sviluppo e produzione

2013-05-15 Per discussione Pietro Battiston
Il giorno mer, 15/05/2013 alle 13.13 +0100, Daniele Varrazzo ha scritto:
> On 2013-05-15 12:54, Diego Barrera wrote:
> 
> > Mi sono spiegato male..
> > A parte la struttura dei rami, non ho capito come posso avere in 
> > locale
> > l'equivalente del comando "git clone" senza mettere su un server;
> 
> Anche ora ti sei spiegato male. Ma comincio a sospettare che tu pensi 
> che git abbia bisogno di un server, che non è vero. In produzione puoi 
> fare "git clone" o "git pull" usando qualunque remote che puoi 
> raggiungere via ssh.
> 

(o pure senza ssh, se si lavora su una sola macchina!)
(non sto dicendo che è meglio, solo che forse tranquillizza ancora di
più Diego)

Pietro

___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] [OT] Git: come gestite sviluppo e produzione

2013-05-15 Per discussione Carlos Catucci
http://nvie.com/posts/a-successful-git-branching-model/

Toh, il Bacchide, come sempre di poche parole ma incisive ;)

Carlos
-- 
..y sobre todo, sean siempre capaces de sentir en lo más hondo cualquier
injusticia cometida contra cualquiera en cualquier parte del mundo. Es la
cualidad más linda de un revolucionario." -  Ernesto Guevara de la Serna
Lynch
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] [OT] Git: come gestite sviluppo e produzione

2013-05-15 Per discussione Carlos Catucci
Mi sono spiegato male..

> A parte la struttura dei rami, non ho capito come posso avere in locale
> l'equivalente del comando "git clone" senza mettere su un server;
>


Sorry avevo capito male io. Ecco io uso Bazar proprio per la sua capacita'
di gestire repository di vari livelli.

http://doc.bazaar.canonical.com/beta/en/user-guide/using_gatekeepers.html

Qui forse un esempio di quello che ti servirebbe



Carlos
-- 
..y sobre todo, sean siempre capaces de sentir en lo más hondo cualquier
injusticia cometida contra cualquiera en cualquier parte del mundo. Es la
cualidad más linda de un revolucionario." -  Ernesto Guevara de la Serna
Lynch
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] [OT] Git: come gestite sviluppo e produzione

2013-05-15 Per discussione Diego Barrera

Il 15/05/2013 14:38, Pietro Battiston ha scritto:

Anche ora ti sei spiegato male. Ma comincio a sospettare che tu pensi
che git abbia bisogno di un server, che non è vero.

Sospetti bene

(o pure senza ssh, se si lavora su una sola macchina!)
(non sto dicendo che è meglio, solo che forse tranquillizza ancora di
più Diego)


mi hai aperto la strada..
ho capito rileggendo (dopo parecchio tempo) questo:
http://git-scm.com/book/it/Basi-di-Git-Ottenere-un-Repository-Git

e poi questo
http://git-scm.com/book/it/Git-sul-Server-Ottenere-Git-su-di-un-Server

Quando tutto il resto non funziona, prova a leggere il manuale :)

Ciao grazie
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] [OT] Git: come gestite sviluppo e produzione

2013-05-15 Per discussione Diego Barrera

Il 15/05/2013 14:55, Carlos Catucci ha scritto:

Mi sono spiegato male..

A parte la struttura dei rami, non ho capito come posso avere in
locale
l'equivalente del comando "git clone" senza mettere su un server;



Sorry avevo capito male io. Ecco io uso Bazar proprio per la sua 
capacita' di gestire repository di vari livelli.


http://doc.bazaar.canonical.com/beta/en/user-guide/using_gatekeepers.html

Qui forse un esempio di quello che ti servirebbe


Interessante, grazie, ma lavoro solo al momento, pero' mi piace tenere 
traccia di quello che modifico ed essere ordinato.

Con git mi trovo bene.
La mia era proprio una lacuna in quanto non avevo compreso il meccanismo 
di condivisione dei repository con git.

Rileggendo il manuale dovrei aver risolto.
Vi ho fatto perdere un po' di tempo con una ca$$ata,
grazie mille diego



___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] Localizzazione in python

2013-05-15 Per discussione Gollum1
Il 15 maggio 2013 00:44, Pietro Battiston  ha scritto:
> Il giorno mar, 14/05/2013 alle 22.54 +0200, Gollum1 ha scritto:
>> > Se stai chiedendo "come faccio a sapere qual'è la cartella in cui sono
>> > contenute le traduzioni", beh allora dipende da come hai disposto le
>> > cose _e_ da dove avvii il programma, ovviamente. Io di solito nei miei
>> > programmi metto un file tipo questo, perché funzionano sia quando
>> > installati che dalla cartella dei sorgenti:
>> > http://www.pietrobattiston.it/gitweb?p=gallery-uploader.git/.git;a=blob;f=galleryuploader_lib/config.py
>> > (ignora le righe da 28 a 68).
>>
>> Sì, è proprio questo che intendevo... ti ringrazio del tuo esempio...
>>
>> mi sono copiato le due parti che mi interessano, e poi me le studio
>> con più calma, anche se credo di aver capito come procedere...
>>
>> nel mio caso in cui la funzione che avvia la localizzazione si trova
>> in un modulo separato, e addiritura in una sua directory separata,
>> vuol dire che devo passare la directory del locale come argomento alla
>> funzione (visto che sono in due scope diversi, non hanno le stasse
>> variabili globali).
>>

mi sono studiato il tuo codice, un paio di chiarimenti:

>
> Se ho capito quello che dici, non c'entrano gli scope: devi passare la
> directory del locale _comunque_ perché è quello che richiede la funzione
> locale.bindtextdomain().

e questo diventa palese, a meno che non riesca a far capire in altro
modo alla funzione che ho scritto qual'é il path del chiamante.

>> vedo che hai fatto una distinzione di due situazioni diverse, una per
>> quando stai sviluppando e una per quando la installi nel sistema.
>>
>> Io mi trovo e sto sviluppando per linux, i processi di installazione
>> sono fatti da uno script a parte? quindi in qualche modo sa dove
>> mettere i tuoi file, le tue librerie, i tuoi locales oppure ogniuno si
>> scrive il suo file di installazione (una sorta di makefile presumo)
>> dove decide a modo suo dove mettere le cose? nel primo caso, una volta
>> scritto il programma, è indipendente dal sistema, se l'installazione è
>> demandato ad un installatore standard, a cui passi solo alcuni
>> parametri, nel secondo caso, devi scrivere il tuo script di
>> installazione per ogni situazione e/o sistema operativo...
>>
> Non so dirti quanto siano lecite le mie assunzioni. Io controllo in
> [sys.prefix, path.join( sys.prefix, 'local' )] più la cartella corrente,
> e mi è sempre bastato.

praticamente questa parte posso metterla direttamente nel modulo che
contiene la "libreria", che mi venga passato come argomento della
chiamata, oppure riesca  a sapere in qualche altro modo qual'é il path
del chiamante, posso fare quello che hai scritto localmente nel
modulo.

>
> La "sorta di makefile" di solito si chiama setup.py, e sì, standardizza
> parecchio l'installazione.
>
> Ciò detto, non credo proprio che il mio config.py funzionerebbe sotto
> Windows, neanche con un'installazione standard. Però non dovrebbe essere
> complicato adattarlo.

Non credo che possa funzionare sotto windows, visto che la cartella di
sistema dei locale non è sicuramente /usr/share/locale, però si
potrebbe fare un piccolo workaround per ovviare nel modulo stesso
(come già faccio per capire quale locale usa la macchina, che è
diverso per *nix, OS-X e Win

quindi dal chiamante (o direttamente nei parametri o con qualcosa che
mi dica chi è il chiamante) ho il suo path, nel modulo "calcolo" il
path di sistema, e con il tuo modello posso fare il locale sia nel
caso di installazione che di utilizzo in sviluppo.

va da se che con questo metodo che mi hai suggerito non ho più la
dipendenza del locale da un path relativo, e quindi non dipende dalla
posizione in cui mi trovo quando lancio il programma.

> N.B: la ricerca della cartella "stuff" invece è una convenzione
> puramente mia. In generale,

Bhe nel mio caso lo stuff potrebbe essere la cartella delle librerie,
che è in una cartella separata rispetto ai programmi veri e propri.

> non ti aspettare dal mio codice niente di
> più di un "works for me".

io spero in un work for me too. (il mio inglese è pessimo, lo so).

> L'ho fatto sempre rispondendo a tre soli
> criteri: 1) gira dalla cartella sorgente

e questo è importante anche per me, per lo sviluppo...

> 2) gira sotto Linux dopo il classico "python setup.py install"

idem, ma vorrei in qualche modo slegarmi dal S.O, e forse con il
workaround che ti dicevo prima, in questo caso è possibile.

questa cosa del setup.py diventa parecchio interessante, a livello di
codice per ora posso non preoccuparmene, oppure è necessario tenere in
considerazione qualcosa durante lo sviluppo?

Nel senso, me ne posso occupare quando il mio programma è finito e
voglio cominciare a distribuirlo?

> 3) gira quando installato come pacchetto Debian.

Altra cosa che mi interessa parecchio, visto che lavoro con debian e
vorrei poi distribuire il mio pacchetto principalmente per Debian (ma
non solo).

>
> Forse ci sono soluzioni più pulite.

Re: [Python] Localizzazione in python

2013-05-15 Per discussione Gollum1
Il 15 maggio 2013 15:36, Gollum1  ha scritto:
>
> e questo diventa palese, a meno che non riesca a far capire in altro
> modo alla funzione che ho scritto qual'é il path del chiamante.
>

semplicemente sys.path[0]

quindi non ho neppure la necessità di passare esplicitamente il path
del chiamante (a meno che non voglia che il locale sia posizionato in
un'altro posto ancora).

quindi potrei semplicemente usare sì il parametro, ma con il default
su sys.path[0]

mi viene solo un dubbio... messo nella chiamata di funzione,
sys.path[0] viene istanziata nel momento dell'import, o nel momento
della chiamata di funzione? potrebbe comportare qualcosa di diverso
nelle due situazioni?

Byez
--
Gollum1
Tesoro, dov'é il mio teoro...
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] Localizzazione in python

2013-05-15 Per discussione Gollum1
Il 15 maggio 2013 16:33, Gollum1  ha scritto:
>
> semplicemente sys.path[0]
>

in effetti non è poi così semplice adattare lo script alle mie
esigenze, in quanto se la funzione di localizzazione deve essere
generica tra diversi programmi, potrei non sapere a priori qual'è la
loro directory di installazione definitiva, potrebbe essere passata in
qualche modo all'init del modulo, quando lo importo nel programma?

nel senso, se nel programma principale mi creo una costante,
contenente quello che per me dovrebbe essere il path di installazione
di questo singolo programma, potrebbe essere passato all'__init__ del
modulo libs caricato e quindi essere usato all'interno di questo
modulo come costante? tutte le varie funzioni che inserisco poi in
questo modulo potrebbero usufruirne per fare i loro controlli del
caso...

o sbaglio in qualcosa nella logica?

Byez
--
Gollum1
Tesoro, dov'é il mio teoro...
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] Localizzazione in python

2013-05-15 Per discussione Gollum1
mi rendo conto di aver detto una miriade di boiate... __INIT__ è per i
package (anche se non ho ancora ben chiaro cosa sono di preciso), non
per i moduli...

continuo a studiare...

--
Gollum1
Tesoro, dov'é il mio teoro...
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] Localizzazione in python

2013-05-15 Per discussione Pietro Battiston
A parte l'ovvia di raccomandazione di guardare come si fa e cosa fa un
setup.py (puoi voler dare un occhio agli entry points - mi spaventa che
ti stia facendo da guida io che sono decisamente ignorante in tema),
ribadisco che il codice che ti ho passato non è particolarmente geniale
ma funziona, quindi puoi vedere come gestisco poi io le path.

ciao

Pietro

Il giorno mer, 15/05/2013 alle 17.57 +0200, Gollum1 ha scritto:
> mi rendo conto di aver detto una miriade di boiate... __INIT__ è per i
> package (anche se non ho ancora ben chiaro cosa sono di preciso), non
> per i moduli...
> 
> continuo a studiare...
> 
> --
> Gollum1
> Tesoro, dov'é il mio teoro...
> ___
> Python mailing list
> Python@lists.python.it
> http://lists.python.it/mailman/listinfo/python


___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python