Skip to main content
GameDev.net gamedev.net
🔒 Locked

[SOLVED] Subversion Replacement

Started by EnigmaticCoder Jan 20, 2010 at 3:30 PM 13 replies 2k views
Original Post
EnigmaticCoder
EnigmaticCoder
I've been using subversion for a few years, and it's been helpful. However, I can't seem to get my repository working correctly on both Windows and Ubuntu simultaneously. Since I spend a lot of time on Ubuntu these days and use Windows for my level editor, I need a version control system that can access and commit changes to the repository from both operating systems. It's probably possible to do it with subversion (although I don't want to put the repository on a server), but I'm fed up at this point. What I've decided is to use a different version control system and put the repository on my Windows partition. I'm thinking bazaar from an initial search, but I'm not sure. Have any of you used bzr and liked it? Is there an alternative you'd recommend? [Edited by - EnigmaticCoder on January 20, 2010 4:54:05 PM]
--------------------Enigmatic Coding
jpetrie
jpetrie
Mercurial (hg) and git. I like Mercurial the best of the three (bzr included), but still prefer SVN for most of my smaller projects.
KulSeran
KulSeran
I'd suggest git (poor windows support imho, but I really like using it anyway).
Perforce is really good on windows (i use it at work). The interface works the same on windows and linux, so it should be easy to setup in linux too.
rip-off
rip-off
Are both windows and linux attempting to write to the raw repository data files?

How are you accessing the respository? Are you dual booting, or are there two machines that could commit/update at the same time?
Indigo Darkwolf
Indigo Darkwolf
Are you trying to keep a backup of the repository on Windows and sync it against the one on Ubuntu, or something strange like that?

Just keep the svn repository on your Ubuntu machine and run the server as a daemon (svnserve -d -r /your/repository/here). Get TortoiseSVN and point it to your SVN repository.

Or are you struggling with using the svn client on *n?x platforms?

Globals are not evil. Singletons are evil.
EnigmaticCoder
EnigmaticCoder
Quote:
Original post by rip-off
Are both windows and linux attempting to write to the raw repository data files?


Yes, if I understand your question correctly.

Quote:

How are you accessing the respository? Are you dual booting, or are there two machines that could commit/update at the same time?


I'm dual booting, accessing the Windows partition from Ubuntu.
--------------------Enigmatic Coding
Codeka
Codeka
Quote:
Original post by EnigmaticCoder
Quote:
How are you accessing the respository? Are you dual booting, or are there two machines that could commit/update at the same time?
I'm dual booting, accessing the Windows partition from Ubuntu.
My guess is that it's probably more to do with running the repository on an NTFS partition than anything to do with Subversion. I haven't used NTFS from Linux in a long time, so I don't know what support is like these days, but it was pretty hit-and-miss back in the day. The problem there is that if that is the case, then you're likely to see similar problems whatever version control software you use.

What problems do you get, exactly?
EnigmaticCoder
EnigmaticCoder
Quote:
Original post by Codeka
What problems do you get, exactly?


I created the repository on windows, and it works but only on Windows. On Linux, it says that it is unable to open ra_local session. The problem, I assume, is that the path to the repository is different on each operating system. On Linux, it's file:///media/... On Windows it's file:///C:\Documents\ and\ Settings\...
--------------------Enigmatic Coding
rip-off
rip-off
I've found anecdotal evidence that this can be done. The main thing is to ensure you aren't using the old Berkely DB format (you can convert an old repository if necessary) and to correctly set the permissions under Linux.
rip-off
rip-off
Quote:

I created the repository on windows, and it works but only on Windows. On Linux, it says that it is unable to open ra_local session. The problem, I assume, is that the path to the repository is different on each operating system. On Linux, it's file:///media/... On Windows it's file:///C:\Documents\ and\ Settings\...

Are you just sharing the repository, or are you sharing the working copies too?

I didn't think a repository maintains any absolute paths to themselves. I've moved them around before, and I've only ever had to point my working copies back at the originals.
Sneftel
Sneftel
Yeah, subversion doesn't have any problem with having its repositories accessed by different pathnames. I do this all the time.
EnigmaticCoder
EnigmaticCoder
Quote:
Original post by rip-off
Quote:

I created the repository on windows, and it works but only on Windows. On Linux, it says that it is unable to open ra_local session. The problem, I assume, is that the path to the repository is different on each operating system. On Linux, it's file:///media/... On Windows it's file:///C:\Documents\ and\ Settings\...

Are you just sharing the repository, or are you sharing the working copies too?

I didn't think a repository maintains any absolute paths to themselves. I've moved them around before, and I've only ever had to point my working copies back at the originals.


Yes, I'm sharing working copies too.
--------------------Enigmatic Coding
rip-off
rip-off
Well, don't =P

It isn't hard to have two working copies.
Codeka
Codeka
Quote:
Original post by EnigmaticCoder
I created the repository on windows, and it works but only on Windows. On Linux, it says that it is unable to open ra_local session. The problem, I assume, is that the path to the repository is different on each operating system. On Linux, it's file:///media/... On Windows it's file:///C:\Documents\ and\ Settings\...
It could be a permission issue. Do you have write access to the repository directory under Linux?
EnigmaticCoder
EnigmaticCoder
Quote:
Original post by rip-off
Well, don't =P

It isn't hard to have two working copies.


While I didn't want to have two working copies, this method works. It's not ideal, but it pretty much solves the problem.
--------------------Enigmatic Coding

Topic Locked

This topic has been locked by a moderator. New replies are not allowed.

Sign in to reply to this topic.