First, I know I could set up a non-server svn repository in my bazooka file system just like we set up CVS, but I'm trying something different. The dreamhost control panel has a tool for installing a subversion repository accessible through Apache. 1. I created a subversion repository called "hello world" with subdirectory hw01. I requested public read access. There is a facility for users that I can manage. This has nothing to do with shell account users, but I made an account for myself. 2. I looked in my directory using my shell account, and found a directory called svn/hw01. Inside this directory was a set of files making up a svn repository that looks very similar, if not exactly the same, as any subversion repository. The files owner is the apache user, and the group is the group name I was was given when I created the account. 3. I created a directory and wrote the familiar hello world program. Then I executed the command: svn import . http://www.fractint.net/hw01 Voila! A publically visible repository with my hello world program accessible at http://www.fractint.net/hw01 4. I installed the subversion tortoise on my PC. Fortunately it can co-exist with the CVS tortoise. I checked out the repository. This worked fine, I was not prompted for a password. 5. I locally edited hello.c and committed. This time I was prompted for username/password 6. The web interface now shows the edited file. Anyone can check out files using any subversion client or the web interface. I can create accounts for people to give them commit permission. Or if we don't want public access, it can be limited to the accounts. One possibly very big problem - I don't know how to import a whole repository with versions. I have no control over the apache ownership of files, so I can't just copy (nor do I think it's appropriate to be directly manipulating the subversion data base anyway). If we convert the existing CVS repository, I don't know how to give the files the right ownership. I'm looking to see if there's a subversion command to bring in a whole repository with versions. Obviously I CAN import all the files without the history. None of this is a show stopper since ssh access method we are using now will still work with subversion; however the server access looks better in several significant ways: better security, better anonymous read-only access. Tim
I wrote:
One possibly very big problem - I don't know how to import a whole repository with versions. I have no control over the apache ownership of files, so I can't just copy (nor do I think it's appropriate to be directly manipulating the subversion data base anyway).
Well, appropriate or not, I *can* just copy and the apache file ownership remains as it was. I created a separate repository by hand, changed permissions on the svn directory to give group write permission, copied over the server-based repository with my non- server repository. What's there now is the copied version. Not exactly elegant but it does work. So I *believe* if we converted the CVS repository, I could just copy the files over the subversion data base created by the dreamhost tool, and we could use the server from that point on. The converse of this is that if I just copy the subversion data base, and change the group to the group shared by our small team, then everyone could access the files the old way. Tim
participants (1)
-
Tim Wegner