Skip to Content.
Sympa Menu

sm-discuss - Re: [SM-Discuss] subversion grimoire wiki page

sm-discuss AT lists.ibiblio.org

Subject: Public SourceMage Discussion List

List archive

Chronological Thread  
  • From: Eric Sandall <eric AT sandall.us>
  • To: SM Discuss <sm-discuss AT lists.ibiblio.org>
  • Subject: Re: [SM-Discuss] subversion grimoire wiki page
  • Date: Mon, 20 Mar 2006 11:38:16 -0800 (PST)

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

On Fri, 17 Mar 2006, Andrew "ruskie" Levstik wrote:
I've been watching the FOSDEM Subversion video

ftp://ftp.belnet.be/pub/mirror/FOSDEM/FOSDEM2006-subversion.avi

And there the presenter points out he uses perforce daily
and explains what p4 integ does and that such a feature
doesn't exist on svn...(in the Q&A segment[time index:43:00])

It's a POST 1.4 feature that they would like to have and
have plans on making it...

Also known as merge tracking...

In case of double merges i.e.

Branch b from a and do modifications on b then merge back to a
Then do some more modifications on b and merge it again into a
it will conflict with the first changes if you don't know the
revision from where to start.

Overall the presentation is impressive and worth the 54 min it plays.

AFAIK SVK[0] 'fixes' many of these issues. SVK only uses the SVN API,
not the SVN binaries, so they avoid many of the SVN headaches (though
SVK is not the fastest SCM, it has been working for me). I know that
some of the merging works as I used it this week while I was down in
California for business:

* Mirrored main directory from sandall.us (since I wouldn't have much
network down there)
* Branched main directory
* Checked out branch to work on
* Mirrored branch on my business partner's machine (Ben)
* Setup a wireless router in our room
* Ben branches his mirror
(branching from mirrors allows us to commit to the branch and not need
to push to a server, as at times neither of us had a network to sync
to my laptop, the 'server' while we were without Internet)
* Ben checks out his branch

sandall.us
|
|
moby (laptop)
|
|
My branch
/ \
/ \
My checkout Ben's mirror
|
|
Ben's branch
|
|
Ben's checkout

Ben could then modify his checkout, submit to his branch, as many
times as he wanted. I could modify my checkout and submit to my branch
as many times as I wanted. No network activity was involved in these
submits. Once Ben wanted to send his changes to me (when we were
connected via the router we brought) he'd do an `svk push` which would
sync his mirror with mine, merge any changes I had done to his files,
then merge his changes into mine (if we both modified the same file,
but different lines, SVK would merge our changes automatically (think
`p4 resolve -am`), but if there was a conflict, it'd ask us if we
wanted to abort, see a diff, accept theirs, or accept ours (think `p4
resolve` on conflicting files), and then would merge these changes
back to the server).

Then, once I get a network connection and we're both synced to each
other, I could do an `svk push` from my end which would sync up with
sandall.us. Now that we're back home (and I still need to look up the
exact syntax for this ;)) Ben can change his mirror to be mirrored
from sandall.us instead of my branch, without having to do a
re-mirror/-branch/-checkout.

I've also used SVK for some grimoire work for my business (we only
need a small subset of the entire grimoire and we won't be needing any
options, but all of it hard-coded) and it's been working out well,
though we don't have a devel/test/stable structure. I've been wanting
to try it out at home, but the svn-mirror package only allows
mirroring Perforce, it doesn't allow submitting yet, so I'd just be
playing in a sandbox rather than doing any real work. :)

Another point to think of is that, while I'd rather not do this, we
could have different SCMs for different teams since the teams have
different needs, though all have some branching and merging, none at
the rate of which the grimoire does this.

- -sandalle

[0] http://svk.elixus.org/

- --
Eric Sandall | Source Mage GNU/Linux Developer
eric AT sandall.us | http://www.sourcemage.org/
http://eric.sandall.us/ | SysAdmin @ Inst. Shock Physics @ WSU
http://counter.li.org/ #196285 | http://www.shock.wsu.edu/
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.2.1 (GNU/Linux)

iD8DBQFEHwSqHXt9dKjv3WERAuabAJ9qHImkRK3mwNRypl/0jR2BN/MA5wCeNUfh
npOBEOSCyNDWH/kzvf+MHZ4=
=UTJU
-----END PGP SIGNATURE-----




Archive powered by MHonArc 2.6.24.

Top of Page