views:

178

answers:

3

My Subversion repository currently is installed on a dual boot system with Windows and Ubuntu Linux installed. Is it possible to use the same repository with both operating systems, so if I work with Ubuntu I can launch the svn service and access the same repository which I used with Windows?

for example

  • the repository files will be accessed by the Linux svn service if my Laptop runs with Ubuntu
  • and later accessed by the Windows svn service when I work with XP

(I will not access the same files with two different subversion servers at the same time)

Or - in other words: if the Subversion repository has been created and used on the Windows partition, can I also reboot with Linux and launch a Subversion server to use the same repository?

+2  A: 

It's not really clear what you mean.

Did you install an svn service on Windows that you want to start (and use) from your Linux System? Or do you just want to access your repository?

IMHO you can reate a repository with the right tool (svnadmin on Linux). It's a directory containing your data and a lot of metadata. THis directory has to be exposed in some way (e.g. webdav, svn service).

A way to access your svn repository from your Linux system is to acces the repository directory directly. e.g.: svn co file://mnt/Windows_C/path/to/repository/project

You have to mount your Windows partition with -o rw though.

lajuette
I prefer the SVN:// protocol because it makes it easier to use the same working copy on both platforms.
mjustin
Does it? Please explain.
lajuette
file://mnt/Windows_C/path/to/repository/project <> svn://repository/project so I need two separate working copies (or relocation with every OS change)
mjustin
so you want to share the working copy on both systems, not just the repository?You have a repository (not a working copy) on your Windows partition that you want to access when working with your Linux system. Is that correct? Or do you want to share a working copy between both systems?If you just have a repo, then the only way to access it from linux is to use the file:// protocol. But you won't have any drawbacks in comparison to using svn://.Sharing a working copy is a whole other thing. But it should work, too. You have to look out when it comes to file encoding and line ends.
lajuette
A: 

Yup, that works fine, at work we combine Windows, OS X, Linux and BSD, all using the same Subversion repo.

niklassaers
directly against the repository, or using an apache/svnserve instance in front of it? In other words, do you use `file:///`, `http(s)://` or `svn://` in your urls?
Sander Rijken
All these clients have their own subversion servers running? My question is about accessing the repository with a Linux svn service if my Laptop runs with Ubuntu, and later with a Windows svn service when I work with XP for example.
mjustin
As Kevin stated: it should be possible.But IMHO you don't need a svn service at all, you should use the 'file://' protocol.
lajuette
+2  A: 

Subversion repositories are binary-compatible if they are using FSFS DB format (cat repos/db/fs-type) rather than Berkeley DB, and compatible versions of Subversion are used.

The Subversion release notes indicate when there are repository format changes. For example, Subversion 1.5 introduced an optional repository format upgrade to support merge tracking, as did 1.4, but Subversion always uses the newest format when a repository is created. It appears that all post-FSFS format upgrades are optional, not mandatory — so all you need to do is ensure that your repository was created by the oldest version of Subversion involved.

Kevin Reid