Versjonskontroll

From Programvareverkstedet
Revision as of 10:25, 7 October 2011 by Jabirali (talk | contribs) (La til litt info om Github)

Denne siden skal inneholde litt informasjon om versjonskontrolltjenerne som brukes av PVV.

Versjonskontrollsystemer

Git

Git er et moderne og desentralisert versjonskontrollsystem. Det at systemet er desentralisert innebærer at når man sjekker ut et repository, følger all historikk og metadata automatisk med. Dette betyr at man kan undersøke historikken, opprette eller smelte sammen prosjektgrener og commit'e lokalt - uten noe network latency eller krav om internettilkobling. Git utmerker seg særlig når gjelder fleksibilitet innen branching/merging.

Se ellers den offisielle dokumentasjonslisten for mer informasjon.

Subversion

Subversion (ofte forkortet svn) er et revisjonskontrollsystem, primært for kildekode. Alle filene til et prosjekt blir liggende i et repository, som inneholder den Rette Kopien av filene, samt alle endringer som er gjort på dem. Folk som jobber med filene må sjekke dem ut fra reposet, endre filene lokalt, og sjekke dem inn i reposet igjen dersom andre skal kunne hente ut endringene.


Utviklingsserveren

Serveren dev.pvv.ntnu.no kjører tjenester til bruk for prosjekter på PVV.

Git

Prosjekter skal legges inn i /srv/git/PROSJEKTNAVN på utviklingsserveren. Autentisering skjer via ssh, slik at alle med brukerkonto hos PVV automatisk skal få tilgang til prosjektene.

Prosjektene på serveren kan sjekkes ut til mappen /PATH/TIL/PROSJEKTNAVN/ ved hjelp av en kommando på formen:
git clone ssh://BRUKERNAVN@dev.pvv.ntnu.no/git/PROSJEKTNAVN /PATH/TIL/PROSJEKTNAVN

Hvis du allerede har et lokalt git-repository du vil laste opp til serveren, kan du bruke git clone --bare for å lage en kopi av repositoriet, og deretter dytte denne til utviklingsserveren via ssh.
git clone --bare /PATH/TIL/PROSJEKT /PATH/TIL/KOPI

scp -r /PATH/TIL/KOPI BRUKERNAVN@dev.pvv.ntnu.no:/srv/git/PROSJEKTNAVN


Subversion

Serveren kjører subversion gjennom apache2. Subversion-filene til et prosjekt blir liggende under /srv/svn/PROSJEKTNAVN på dev.pvv.ntnu.no. Brukere autentiseres gjennom http-autentiserings-mekanismen til apache2. Siden vi autentiserer brukere mot PAM, vil alle pvv-brukere kunne få autentiserte brukere i apache.

Prosjektene på serveren kan sjekkes ut ved hjelp av en kommando på formen:
svn co https://dev.pvv.ntnu.no/svn/PROSJEKTNAVN

Se denne siden for mer informasjon om oppsettet.


Github

PVV har også en konto på Github, som brukes til noen samarbeidsprosjekter.

Powerdot

I repositoriet Powerdot ligger det en presentasjonsmal som benytter LaTeX med Powerdot-pakken, samt noen hjemmelagde makroer. Dersom du føler at standardmalen mangler noe, er det bare å lage en fork i Github og sende en offisiell pull-request når du har reparert malen.