[svlug] Need advice/help managing documents - Subversion? GIT?

Will Ashford washford at cs.stanford.edu
Thu Oct 16 15:58:54 PDT 2008


Hi,

In terms of version control I've had a good experience using Mercurial
which is very similar to Git (disclaimer: I haven't used Git). I feel
it is better than Subversion in the scenario you mention because svn
connects back to the central server for most (all?) actions and
Mercurial only does so for manual syncs. Mercurial also supports http
and https transports. TortoiseHg is the windows client for Mercurial.

For a version control scheme you could place each directory you care
about under version control. Subdirectories of a controlled directory
are also controlled but you are not required to place every controlled
directory into one hierarchy. You could then check out the
(sub)directory of your choice, make changes, and check back in when
you want to switch computers, thereby avoiding keeping copies of all
data on every machine. For svn this requires (at least) one machine to
have all the data. Mercurial and Git do not have this restriction,
though things begin to become confusing when you take that route.

For a simpler (which I think is usually better) solution, you may want
to consider using rsync or unison to mirror a directory structure.
This is impeded by the http proxy but see corkscrew for a hackish
solution. This method has less overhead and more manual involvement
(you'd have to remember to sync in and sync back any changes you made)
and does not record a history of changes over time. Version control
software will preserve all changes regardless of where it happened in
time or space but resolving edit collisions might become a pain.

Personally I maintain a directory tree on one server that I designated
the "master" and force myself to rsync changes back at the end of each
edit session. I mirror that directory out to several other servers via
rdiff-backup and a cron job. This keeps a copy of each project on each
server in question (going against your requirement) but you could
tweak matters.

Cheers,
Will

On Thu, Oct 16, 2008 at 2:46 PM, Bill Ward <bill at wards.net> wrote:
> I have several laptops that I use (my own, issued by work, my wife's) plus
> my desktop Linux box.  On each one I have differing subsets of documents,
> hopefully not in different versions :) and no really consistent way of
> syncing them up or backing them up.
>
> I was thinking about setting up Subversion or GIT, and checking the files
> in/out of that.  I've never worked with either one, though I have a lot of
> experience with CVS and ClearCase.  So a few questions...
>
> 1. Would this be a good idea?  Should I use SVN or GIT or is there something
> else I should consider?
>
> 2. How would I need to organize my files to make this work?  For example I
> don't want to have a copy of everything on every machine - just the
> particular project that I need to work on at that moment in time.
>
> 3. Any other tips or ideas....?
>
> Another wrinkle: my work laptop spends most of its time behind a firewall
> that only allows outside access via HTTP proxy, and it runs Windows.
> Whatever solution I use needs to run on Windows and needs to have some way
> of tunneling across that proxy.  I could set up SSH port forwarding via
> SecureCRT but would prefer if it had native HTTP proxy support using its own
> SSH.  WinCVS does SSH but as far as I know not with HTTP Proxy.  What about
> SVN or GIT clients for Windows?
>
> _______________________________________________
> svlug mailing list
> svlug at lists.svlug.org
> http://lists.svlug.org/lists/listinfo/svlug
>
>




More information about the svlug mailing list