Difference between revisions of "Versjonskontroll"

From Programvareverkstedet
Jump to navigation Jump to search
(La til noe informasjon om Git.)
(Utdypet informasjonen om Git litt)
Line 17: Line 17:
  
 
=== Git ===
 
=== Git ===
Prosjekter skal legges inn i <tt>/srv/git/PROSJEKTNAVN</tt> på utviklingsserveren.
+
Prosjekter skal legges inn i <tt>/srv/git/PROSJEKTNAVN</tt> på utviklingsserveren. Autentisering skjer via ssh, slik at alle med brukerkonto hos PVV automatisk skal få tilgang til prosjektene.
Deretter autentiserer man via <tt>ssh</tt>, slik at alle med en brukerkonto hos PVV automatisk skal få tilgang til prosjektene.
 
  
 
Prosjektene på serveren kan sjekkes ut til mappen <tt>/PATH/TIL/PROSJEKTNAVN/</tt> ved hjelp av en kommando på formen:
 
Prosjektene på serveren kan sjekkes ut til mappen <tt>/PATH/TIL/PROSJEKTNAVN/</tt> ved hjelp av en kommando på formen:
 
<br /><tt>git clone ssh://BRUKERNAVN@dev.pvv.ntnu.no/git/PROSJEKTNAVN /PATH/TIL/PROSJEKTNAVN</tt><br />
 
<br /><tt>git clone ssh://BRUKERNAVN@dev.pvv.ntnu.no/git/PROSJEKTNAVN /PATH/TIL/PROSJEKTNAVN</tt><br />
 +
 +
Hvis du allerede har et lokalt git-repository du vil laste opp til serveren, kan du bruke <tt>git clone --bare</tt> for å lage en kopi av repositoriet, og deretter dytte denne til utviklingsserveren via ssh.
 +
<br /><tt>git clone --bare /PATH/TIL/PROSJEKT /PATH/TIL/KOPI</tt><br />
 +
<br /><tt>scp -r /PATH/TIL/KOPI BRUKERNAVN@dev.pvv.ntnu.no:/srv/git/PROSJEKTNAVN</tt><br />
 +
  
 
=== Subversion ===
 
=== Subversion ===

Revision as of 10:18, 7 October 2011

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

Noe informasjon om PVVs konto på Github.