Difference between revisions of "Education ClassRoom/Previous Logs/OOo svn migration"

From Apache OpenOffice Wiki
Jump to: navigation, search
Line 114: Line 114:
  
 
[17:22]  <blauwal> Now there is just one script which replaces the number of cwsxxx tools we had
 
[17:22]  <blauwal> Now there is just one script which replaces the number of cwsxxx tools we had
 +
 +
[17:23]  <blauwal> "cws create" is for the creation of CWSs, it creates the CWS branch in the repository and registers a CWS with EIS
 +
 +
[17:24]  <blauwal> With "cws fetch" you can check out your CWS, alternatively you can also just use "svn checkout <.../ooo/cws/mycws" of course
 +
 +
[17:24]  <blauwal> "cws rebase" is the replacement for cwsresync and makes use of the subversion mergetracking feature.
 +
 +
[17:24]  <blauwal> next slide
 +
 +
[17:25]  <blauwal> the other cws commands are there as well
 +
 +
[17:25]  <blauwal> next slide
 +
 +
[17:25]  * rtimm (n=Ruediger@sd-socks-197.staroffice.de) has left #education.openoffice.org
 +
 +
[17:25]  <blauwal> finally I want to say a few things about what exactly has been migrated.
 +
 +
[17:26]  <blauwal> Naively one would think that a migration involves the conversion of the whole project history

Revision as of 15:26, 8 October 2008

[17:00] <ericb2> blauwal: let's start ?

[17:00] <blauwal> ericb2: yes, let's start

[17:00] <ericb2> blauwal: thanks a lot for accepting to be there :)

[17:00] <blauwal> Thank you for the invitation Eric

[17:00] <ericb2> blauwal: you're welcome !

[17:00] * fardad is all ears (eyes)!

[17:01] <blauwal> I'm going to say a bit about the OOo subversion migration

[17:01] * ronyf (n=chatzill@abt-wi-018.wu-wien.ac.at) has joined #education.openoffice.org

[17:01] <blauwal> I've prepared a (very) few slights and linked them to the eduction page in the Wiki

[17:01] * chacha_chaudhry (n=dev@gnu-india/supporter/rakeshpandit) has joined #education.openoffice.org

[17:01] * ChanServ gives channel operator status to chacha_chaudhry

[17:02] Balise blauwal

[17:02] <blauwal> I'm a lousy typist, so please bear with me

[17:02] <ericb2> blauwal: :)

[17:02] <blauwal> CVS is aging as you all know and we got a lot of pressure to work with something better

[17:03] <ericb2> The link : http://tools.openoffice.org/scm_migration/subversion_migration.pdf

[17:03] <blauwal> We had a long discussion about what to use, a DSCM or Subversion

[17:03] <blauwal> We evaluated a number of DSCM and found them all lacking in one aspect or another, so we finally choosed SVN

[17:04] <blauwal> but we'll keep the eyes open and reevaluate the DSCMs from time to time

[17:04] <blauwal> 1) slide

[17:05] <blauwal> The CVS server on CN is not exactly known as the fastest one so we made sure that our new server is fast.

[17:05] <blauwal> It should never be a bottleneck.

[17:06] <blauwal> We hope that the 4 CPU 8 cores 64 GB should suffice for a time

[17:06] <blauwal> The network connectivity is also quite good, but can't be really controlled by us, of course. The server is located in Las vegas

[17:07] <blauwal> Over time we'll probably add a few services on that machine, the first one will be OpenGrok, a fast indexer and LXR replacement

[17:08] <blauwal> We've got a backup server in case something goes seriously wrong. We hope that we can achieve a pretty good reliance with this setup.

[17:08] <blauwal> next slide ...

[17:09] <blauwal> One of the critical features we need from a SCM system is merge tracking. Here do the DSCMs (mercurial, git, bazaar) really shine, becuase mergetracking is kind of immanent in them

[17:10] * rtimm (n=Ruediger@sd-socks-197.staroffice.de) has joined #education.openoffice.org

[17:10] <blauwal> Subversion introduced merge tracking with Subversion 1.5, so we really need to use 1.5 SVN clients

[17:10] <blauwal> Best is to always use the latest one (1.5.2 at the moment)

[17:11] * humph (n=dave@cdot.senecac.on.ca) has joined #education.openoffice.org

[17:11] <blauwal> Branching and tagging is implemented in Subversion as "paths" into the repository. Thus the repository layout deserves a few word.

[17:13] <blauwal> All "paths" in SVN are accessed via an URL. For instance the trunk or head revision can be accessed via sv://svn.services.openoffice.org/ooo/trunk

[17:13] <blauwal> s/sv/svn

[17:13] <blauwal> when we create a milestone, the we do a svn copy operation from trunk to tags, ie

[17:14] <blauwal> svn copy <...>/ooo/trunk <...>/tags/DEV300_m32

[17:14] <blauwal> this copy is a "copy-on-write" operation, it takes only a tiny bit of space in the repository

[17:15] <blauwal> branches are created with the same command, ie

[17:15] <blauwal> svn copy <...>/ooo/trunk <...>/branches/OOO310

[17:16] <blauwal> so, if you are looking for a milestone, check the .../tags path

[17:16] <blauwal> for a (major) branch it's .../branches

[17:16] <blauwal> and for a CWS, you guessed it, .../cws

[17:17] <blauwal> there are a few other paths in there like ../contrib .../vendor .../patches which are for stuff which aren't really meant to go in the main development line

[17:18] <blauwal> We do not employ a path based access restrictions. If you got write access to the repository you can change things everywhere, but we think it's good enough to use just some conventions

[17:19] <blauwal> we'll see if this works.

[17:19] <blauwal> next slide ...

[17:20] <blauwal> You can access the repository via svn://, http:// and svn+ssh:// methods, the first two are read-only, the last one is the read/write access method. You'll need to provide a public

[17:20] <blauwal> key for write access

[17:21] <blauwal> svn+ssh:// is basically a svn protocol over a ssh tunnel

[17:21] <blauwal> next slide

[17:21] <blauwal> We had to modify the CWS tooling of course ...

[17:21] <blauwal> because it was ingrained with CVS special things

[17:22] * riddle28 (i=ca9929ab@gateway/web/ajax/mibbit.com/x-fa6fef1e35ff3f4d) has joined #education.openoffice.org

[17:22] <blauwal> Now there is just one script which replaces the number of cwsxxx tools we had

[17:23] <blauwal> "cws create" is for the creation of CWSs, it creates the CWS branch in the repository and registers a CWS with EIS

[17:24] <blauwal> With "cws fetch" you can check out your CWS, alternatively you can also just use "svn checkout <.../ooo/cws/mycws" of course

[17:24] <blauwal> "cws rebase" is the replacement for cwsresync and makes use of the subversion mergetracking feature.

[17:24] <blauwal> next slide

[17:25] <blauwal> the other cws commands are there as well

[17:25] <blauwal> next slide

[17:25] * rtimm (n=Ruediger@sd-socks-197.staroffice.de) has left #education.openoffice.org

[17:25] <blauwal> finally I want to say a few things about what exactly has been migrated.

[17:26] <blauwal> Naively one would think that a migration involves the conversion of the whole project history

Personal tools