svn for offline?

Joseph Sinclair plug-development at stcaz.net
Fri Sep 16 20:12:49 MST 2005


Not sure if this is what you want, but here goes.

Subversion allows a wide range of actions on the source tree without connecting to the repository.  You can add/modify/remove/etc... files/directories/etc...  many svn commands occur offline.  You and others can do this independently, and when you are ready with YOUR changes, you do a svn commit, and svn puts all of your changes together, generates diff's against the cached unchanged versions of the files, and sends the diff's to the server.  If there has been an out-of-order update in the meantime, you are asked to do an update and resolve any conflicts locally before your commit is accepted.

The one thing SVN doesn't support is maintaining a version tree (same file, multiple checkin/checkout cycles, possibility of reversion) of changes offline, you only have one offline copy, any versioning requires a commit to the repository.

If you really want to do development "kernel style" (which is close to what you're describing), then I'd suggest using the tool Linus developed for the Linux kernel development (git) possibly with a front-end like Cogito.
It's highly likely that it'll do exactly what you're asking for.

==Joseph++

der.hans wrote:
> moin, moin,
> 
> I want to have offline copies of repositories that can take checkins, etc.
> when not able to connect to the server.
> 
> I would then like those checkins to checkin to the real repository. I need
> this to work with out of order changes.
> 
> For instance, if computer A adds 'blah' and computer B adds 'foo' and
> computer C removed 'fred' I want the repository to have blah and foo, but
> not fred and have logs from each change.
> 
> I'm fine w/ the main repository checkins requiring intervention if it
> can't automagically handle the changes, but I want it to still
> automagically capture the original log, etc.
> 
> I think the checkin to the main repository needs to be able to pull each
> of the new versions in the offline repositories and check them in by hand.
> 
> I've just been maintaining seperate RCS trees and been merging things by
> hand. I would like to avoid writing a script to peel out old RCS versions
> and apply them to another repository.
> 
> ciao,
> 
> der.hans


More information about the PLUG-devel mailing list