My favorites | Sign in
Project Home Downloads Wiki Issues Source
READ-ONLY: This project has been archived. For more information see this post.
Search
for
SVNGuide  
Denne guide introducerer brugen af SVN versionskontrol på SW6 Android multiprojektet.
Featured, Guide
Updated Feb 22, 2011 by jpih...@gmail.com

FORUDSÆTNINGER


KONFIGURERING AF SVN I ECLIPSE

Vi skal bruge en SVN-klient til ecllipse. Standardprogrammet i Eclipse, Subversive, har problemer med at merge hos google code, hvorfor vi skal bruge Subclipse i stedet.

Fjern Subversive

  • Help > Install New Software > What is already installed
  • Markér alt der har med Subversive og SVN-Kit at gøre, og klik Uninstall
  • Genstart eclipse, når den beder om det.

Installer Subclipse

  • Help > Install new software > Add
  • Tilføj subclipse (Name: Subclipse, Location: http://subclipse.tigris.org/update_1.6.x )
  • Vælg at installere Core SVNKit Library, Optional JNA Library samt Subclipse. Under Subclipse skal du dog fravælge Subclipse Integration for Mylyn.
  • Fjern flueben i Contact all update sites during install (...) (så installeres subclipse på 2 minutter i stedet for 2 timer :) )
  • Klik Next og Finish til det er installeret. Genstart Eclipse.

Anvend SVNKit som SVN interface

  • Window > Preferences > Team > SVN, vælg SVNKit fremfor JavaHL, i dropdown menuen.

Importér projekter fra Google Code

  • Du skal importere 4 eclipse-projekter fra SVN. Alle gruppers stable repository, samt din egen gruppes unstable repository.
    • De stable repositories findes i: sw6.projektnavn/trunk
    • De unstable findes i: sw6.projektnavn/branches/dev
  • Andetsteds findes der en forklaring på mappestrukturen, men indtil videre er det nok at vide, at du skal importe din egen gruppes dev-mappe, og alle trunk-mapperne (altså i alt 4 projekter)

Følgende er en guide til at importere et projekt

  • Højreklik i package explorer (projektlisten til venstre i eclipse) > Import > SVN > Checkout Projects from SVN > Next
  • Hvis du ikke har oprettet repository’et endnu klikker du Create a new repository > Next
  • Url: https://sw6android.googlecode.com/svn/
  • Vælg mappen der ønskes importeret (enten en trunk-mappe eller en branches/dev-mappe)
  • Next, finish indtil projektet er importeret.

Samarbejde

Ideén er nu, at du har de andres stable release (trunk), og kan svn-update deres mapper løbende. Du skal altså ikke comitte til disse mapper. Samtidig har du importeret din egen gruppes dev-mappe. Dev-mappen er en branch af jeres trunk-mappe, som i løbende kan arbejde i. Jeres branches/dev-repository er altså jeres gruppes helt eget repository, som I muligvis kender det fra tidligere projekter. Hertil kan i løbende comitte kode så meget som i lyster, for det er kun jeres gruppe der arbejder i dev-branchen. Når I har noget kode, der er klar til "produktion" skal I merge jeres branch (jeres /branches/dev repository) med jeres trunk. I skal altså flette jeres branch's ændringer tilbage ind i trunken, så andre kan få glæde af jeres stable kode. Vi anbefaler at I udvælger et gruppemedlem, der er ansvarlig for at merge jeres branch med trunken regelmæssigt.

MERGE BRANCHES/DEV TIL TRUNK

Ideén er at du switcher repository fra dev-branchen til jeres trunk, og så "re-integrater" du dev-branchen med trunken, og herefter comitter trunk'en. Rent praktisk gør du følgende:

  • Opdater din dev-branch
    • Sørg for at dev-branchen er helt opdateret (svn update)
    • Commit alle rettelser du har til jeres dev-branch
  • Skift til jeres trunk
    • øjreklik på jeres projekt > Team > Switch to another Branch/Tag/Revision
  • Merge dev-branch til trunk
    • Højreklik på projektet > Team > Merge > Reintegrate a branch > Next
    • I ”Merge from” vælger du jeres dev-branch (branches/dev) > Next > Finish
Om alt går vel, trækker SVN nu jeres dev-branch-ændringer ned i trunken, så trunken og dev-branchen er ens.
  • Commit ændringer i trunk
    • Efter du har merged, skal du huske at comitte ændringerne i trunken. Det er ikke nok at merge, så husk at comitte!
    • Skift tilbage til dev-branchen
    • Husk at switche tilbage til dev-branchen, når du har merged, så du ikke kommer til at comitte dine små-ændringer til trunken ved en fejl.


Commit

Når du forsøger at committe vil du blive mødt med en godkendelseboks, hvor du skal skrive det autogenererede googlecode.com password og dit brugernavn. Denne information kan findes her, hvor dit brugernavn er brugernavn@gmail.com

Af uforklarlige årsager vil du formentlig opleve at få en fejl 500 (Service unavailable) af og til når du forsøger at committe. Heldigvis er der et workaround - prøv igen.


Regler

Det koster naturligvis øl og/eller kage at have kode i jeres trunk som ikke kan compile :)

Powered by Google Project Hosting