SVN för Debian Documentation Project

Debian Documentation Project lagrar sina webbsidor samt stora delar av manualtexterna på Debians subversion-server svn.debian.org och Debians Git-server på git.debian.org. svn.debian.org och git.debian.org är en del av Gforge-installationen på alioth.debian.org. Vänligen läs Alioth-dokumentationen för mer information om hur denna tjänst fungerar.

Vem som helst kan hämta källkoden från SVN/Git-servern. Endast medlemmar av Debians dokumentationsprojekt kan uppdatera filer.

Nå källkoden i svn

Du kan använda ett webbgränssnitt för att komma åt filer individuellt och se ändringarna på dem.

För att hämta en hel manual är direktåtkomst till svn-servern oftast ett bättre val. Du måste då installera subversion-paketet på din egen maskin.

Ansluta anonymt (skrivskyddat) till svn-servern

Använd detta kommando för att hämta alla filer:

svn co svn://svn.debian.org/svn/ddp/manuals/trunk manuals

Detta kommer att skapa och fylla alla kataloger rekursivt.

För att uppdatera din lokala kopia med ändringar gjorda av andra går du in i katalogen manuals och kör kommandot:

svn export --force svn://svn.debian.org/svn/ddp/manuals

Ansluta mot svn-server med uppdateringsrättigheter (svn)

Innan du ansluter till svn-servern med denna metod måste du först få skrivåtkomst till den. Läs mer om hur du efterfrågar uppdateringsrättigheter först.

Använd detta kommando för att hämta alla filer:

svn co svn+ssh://svn.debian.org/svn/ddp/manuals/trunk manuals

Detta kommer att skapa och fylla alla kataloger rekursivt.

För att uppdatera din lokala kopia med ändringar gjorda av andra går du in i katalogen manuals och kör kommandot:

svn export --force svn://svn.debian.org/svn/ddp/manuals

Ansluta mot svn-server med uppdateringsrättigheter (git-svn)

Innan du ansluter till svn-servern med denna metod måste du först få skrivåtkomst till den. Läs mer om hur du efterfrågar uppdateringsrättigheter först.

Använd detta kommando för att hämta alla filer:

git svn clone -s -rHEAD svn+ssh://svn.debian.org/svn/ddp/manuals manuals

Detta kommer att skapa och fylla alla kataloger rekursivt. Det kommer också skapa ett lokelt git-arkiv utan äldre historia som kan följa alioths svn-server.

För att uppdatera din lokala kopia med ändringar gjorda av andra går du in i katalogen manuals och kör kommandot:

git svn rebase

Få uppdateringsrättigheter

Uppdateringsrättigheter finns tillgängliga för alla som önskar delta i att skriva manualerna. Vi ber normalt om att du sänt in några användbara patchar först.

Efter att du har skapat ditt konto på Alioth, var vänlig att efterfråga uppdateringsrättigheter genom att klicka på Request to join på nedre högra delen av sidan https://alioth.debian.org/projects/ddp. Var vänlig och fyll i kommentarsrutan med det uttryckliga syftet med varför du behöver tillgång. Vänligen följ upp med e-post till debian-doc@lists.debian.org som visar ditt arbete i Debian.

Så snart din förfrågan godkänts kommer du bli en del av ddp-projektet (och -Unix-gruppen) på Alioth.

Automatisk uppdateringsmekanism

De publicerade webbversionerna av manualtexterna genereras på www-master.debian.org som en del av webbplatsens vanliga byggprocedur, vilken körs var fjärde timme.

Skriptet utför kommandot svn update och sedan Make -C manuals clean publish.

Makefilen är skriven så att den bygger om varje katalog (som innehåller dokumentation som underhålls) och installerar filerna från varje katalog i underkatalogen doc/manuals/ på webbplatsen. Underkatalogen makefiles bygger på manuals/standard.makefile.

Dokumentationsfilerna som genereras av uppdateringsskriptet finns under https://www.debian.org/doc/manuals/.

Loggfilerna som genereras av uppdateringsskriptet finns på http://www-master.debian.org/build-logs/ddp/

Skriptet kör svn export --force svn://svn.debian.org/svn/ddp/manuals och sedan make -C trunk publish.

Observera att proceduren skapar katalogen /doc/manuals/. Innehållet i katalogen /doc/ skapas antingen från webwml eller från andra skript, som till exempel de som packar upp några specifika manualer från sina paket.