3826
Comment: sync with English version
|
6759
sync with English master
|
Deletions are marked like this. | Additions are marked like this. |
Line 2: | Line 2: |
||<tablestyle="width: 100%;" style="border: 0px hidden">~-[[DebianWiki/EditorGuide#translation|Translation(s)]]: [[svn-buildpackage|English]] - Italiano-~||<style="text-align: right;border: 0px hidden"> (!) [[/Discussion|Discussion]]|| | ~-[[DebianWiki/EditorGuide#translation|Traduzioni]]: [[svn-buildpackage|English]] - Italiano-~ |
Line 4: | Line 4: |
= Riassunto = | |
Line 7: | Line 6: |
<<TableOfContents>> |
|
Line 41: | Line 42: |
== Introduzione per un principiante, usando debichem == Queste righe sono state scritte quando l'autore di questa sezione si è unito al Team Debichem. === Percorsi === Ognuno ha abitudini particolari: l'autore gestiva tutti i suoi pacchetti in directory del tipo {{{${HOME}/development/$PACCHETTO}}} Per esempio, il pacchetto "units-filter" era gestito all'interno di {{{${HOME}/development/units-filter}}}, e questa directory conteneva i file come {{{development/units-filter/units-filter_3.5.orig.tar.gz}}} Da qui in avanti, la directory {{{${HOME}/development sarà chiamata ${devroot}}}}. === Ottenere il materiale di lavoro del Team nel proprio computer === * Dato che svn-buildpackage ha senso con un gruppo, prima ci si deve unire ad un Team che usa questo strumento, e ottenere un account sul suo repository SVN * controllare l'albero in cui è contenuto il materiale su cui si collabora: {{{ #!sh cd ${devroot} svn checkout svn+ssh://svn://svn.debian.org/blends/projects/debichem/trunk/debichem }}} * Questo crea una directory {{{${devroot}/debichem}}} con tutto il lavoro del Team, di cui SVN terrà traccia. * I dati in questa directory possono essere aggiornati con il comando seguente: {{{ #!sh cd ${devroot}/debichem svn update }}} === Configurazione === * È stato poi creato un file di configurazione ~/.svn-buildpackage.conf contenente queste righe: {{{ svn-override=origDir=${devroot}/$PACKAGE svn-override=buildArea=${devroot}/$PACKAGE }}} * Attenzione: ${devroot} deve essere sostituito con l'effettivo percorso delle directory dei pacchetti; $PACKAGE va scritto verbatim. === Lavorare sul pacchetto jmol === * Nell'esempio si è lavorato al pacchetto {{{jmol}}}. Il primo passo è stato recuperare la sua più recente versione originale a monte. Perciò ci si è spostati nella sottodirectory jmol dell'albero mantenuto dal Team e si è usato {{{uscan}}} per ottenere la versione più recente: {{{ cd ${devroot}/debichem/unstable/jmol mkdir ${devroot}/jmol uscan --force-download --devroot ${devroot}/jmol }}} * Dopo avere aspettato un po' si è ottenuto come risultato questo feedback: {{{ jmol: Version (13.2.3) available on remote site: http://qa.debian.org/watch/sf.php/jmol/Jmol-13.2.3-full.tar.gz (local version is 13.0.15+dfsg, mangled local version number 13.0.15) jmol: Successfully downloaded updated package Jmol-13.2.3-full.tar.gz and symlinked jmol_13.2.3.orig.tar.gz to it + UPSTREAM_VERSION=13.2.3 + ORIG_TARBALL= ... ... [ many other lines ] ... + exit 0 }}} * Il file {{{${devroot}/jmol/jmol_13.2.3+dfsg.orig.tar.gz}}} è stato creato con successo. === Ulteriori suggerimenti da Daniel Leidert === {{{ - Per applicare patch o controllare la compilazione si può usare `svn-do`. Nel percorso risultante si possono creare o modificare patch. Usare `exit` e tutte le modifiche saranno copiate nell'albero subversion (incluso i file patch modificati o aggiunti). Usare `exit 1` o qualcosa di simile e tutte le modifiche verranno abbandonate. }}} |
Traduzioni: English - Italiano
svn-buildpackage è uno strumento che aiuta nel mantenimento dei pacchetti con Subversion.
HowTo sulla manutenzione di gruppo
Regole:
- si possono memorizzare le informazioni della struttura nelle proprietà di subversion della directory debian/
- memorizzare le seguenti informazioni nelle informazioni della struttura (attraverso le proprietà svn-bp:* della directory debian)
tarball a monte - informazione della struttura origUrl (questo permetterà un flusso di lavoro come quello descritto nel processo di compilazione dello sviluppo di giochi)
- impostare tutti i campi URL:
- trunkUrl
- tagsUrl (usa URI per gli utenti autenticati)
- branchesUrl
- specificare le informazioni della struttura utilizzando percorsi relativi
Esempi
specifiche origUrl:
eddy@bounty ~/usr/src/games/trunk/wormux $ svn pl debian/ | grep svn-bp svn-bp:origUrl eddy@bounty ~/usr/src/games/trunk/wormux $ svn pg svn-bp:origUrl debian/ http://pkg-games.alioth.debian.org/tarballs/wormux_0.7.9.orig.tar.gz
Informazioni relative:
origDir=.. trunkDir=. buildArea=../build-area
Introduzione per un principiante, usando debichem
Queste righe sono state scritte quando l'autore di questa sezione si è unito al Team Debichem.
Percorsi
Ognuno ha abitudini particolari: l'autore gestiva tutti i suoi pacchetti in directory del tipo ${HOME}/development/$PACCHETTO
Per esempio, il pacchetto "units-filter" era gestito all'interno di ${HOME}/development/units-filter, e questa directory conteneva i file come development/units-filter/units-filter_3.5.orig.tar.gz
Da qui in avanti, la directory ${HOME}/development sarà chiamata ${devroot}.
Ottenere il materiale di lavoro del Team nel proprio computer
- Dato che svn-buildpackage ha senso con un gruppo, prima ci si deve unire ad un Team che usa questo strumento, e ottenere un account sul suo repository SVN
- controllare l'albero in cui è contenuto il materiale su cui si collabora:
cd ${devroot} svn checkout svn+ssh://svn://svn.debian.org/blends/projects/debichem/trunk/debichem
Questo crea una directory ${devroot}/debichem con tutto il lavoro del Team, di cui SVN terrà traccia.
- I dati in questa directory possono essere aggiornati con il comando seguente:
cd ${devroot}/debichem svn update
Configurazione
- È stato poi creato un file di configurazione ~/.svn-buildpackage.conf contenente queste righe:
svn-override=origDir=${devroot}/$PACKAGE svn-override=buildArea=${devroot}/$PACKAGE
- Attenzione: ${devroot} deve essere sostituito con l'effettivo percorso delle directory dei pacchetti; $PACKAGE va scritto verbatim.
Lavorare sul pacchetto jmol
Nell'esempio si è lavorato al pacchetto jmol. Il primo passo è stato recuperare la sua più recente versione originale a monte. Perciò ci si è spostati nella sottodirectory jmol dell'albero mantenuto dal Team e si è usato uscan per ottenere la versione più recente:
cd ${devroot}/debichem/unstable/jmol mkdir ${devroot}/jmol uscan --force-download --devroot ${devroot}/jmol
- Dopo avere aspettato un po' si è ottenuto come risultato questo feedback:
jmol: Version (13.2.3) available on remote site: http://qa.debian.org/watch/sf.php/jmol/Jmol-13.2.3-full.tar.gz (local version is 13.0.15+dfsg, mangled local version number 13.0.15) jmol: Successfully downloaded updated package Jmol-13.2.3-full.tar.gz and symlinked jmol_13.2.3.orig.tar.gz to it + UPSTREAM_VERSION=13.2.3 + ORIG_TARBALL= ... ... [ many other lines ] ... + exit 0
Il file ${devroot}/jmol/jmol_13.2.3+dfsg.orig.tar.gz è stato creato con successo.
Ulteriori suggerimenti da Daniel Leidert
- Per applicare patch o controllare la compilazione si può usare `svn-do`. Nel percorso risultante si possono creare o modificare patch. Usare `exit` e tutte le modifiche saranno copiate nell'albero subversion (incluso i file patch modificati o aggiunti). Usare `exit 1` o qualcosa di simile e tutte le modifiche verranno abbandonate.
Trucchi
Solo l'etichetta, senza controlli sulle dipendenze
svn-buildpackage --svn-tag-only -d
Come ottenere il pacchetto sorgente decompresso senza compilare
svn-buildpackage -d --svn-export
oppure
svn-buildpackage -d --svn-builder echo
Modificare facilmente i pacchetti che sono importati parzialmente (sorgenti che hanno l'opzione mergeWithUpstream impostata)
Tutti i seguenti comandi utilizzano il wrapper svn-do presente in /usr/bin/svn-do (nelle vecchie versioni svn-do era in /usr/share/svn-buildpackage/contrib/svn-do)
# pulisce l'albero (utile se richiede l'albero sorgente completo) % svn-do debclean I: Exporting source tree via svn-buildpackage... [...] I: Running command: debclean [...] I: Copying back the debian/ tree... `debian/control' -> `/home/lool/svn/debian/pkg-gnome/desktop/unstable/nautilus-cd-burner/debian/control'
# usa quilt per aggiornare una patch % QUILT_PATCHES=debian/patches svn-do \ sh -c "quilt push 002_static-linking-dont-build-perf.patch; quilt refresh" [...] I: Copying back the debian/ tree... [...] `debian/patches/002_static-linking-dont-build-perf.patch' -> `/home/lool/svn/debian/pkg-gnome/desktop/experimental/gtk+2.0/debian/patches/002_static-linking-dont-build-perf.patch'
# inizia una sessione di modifica sorgenti e poi decide di non copiare l'albero debian/ % svn-do $SHELL [...] I: Running command: /bin/zsh % exit 1 E: comando terminato con 1; albero debian/ non copiato.
# modifica una patch in un pacchetto basato su simple-patchsys del sistema CDBS % svn-do cdbs-edit-patch 02_pmount.patch [...]
Sviluppo
svn-buildpackage è attualmente mantenuto come parte del repository collab-maint. Per unirsi al team di sviluppo gli si può dare un'occhiata, entrare nel canale #debian-svn-bp su OFTC, iscriversi al sistema tracciamento pacchetti su http://packages.qa.debian.org/s/svn-buildpackage.html. Ci sono alcuni miglioramenti potenziali che potrebbero essere fatti.
L'attuale svn-buildpackage è ottenibile tramite il seguente comando:
debcheckout svn-buildpackage
oppure con l'accesso autorizzato (richiede un account su Alioth):
debcheckout -a svn-buildpackage