You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@subversion.apache.org by Chris Smith <sm...@bigfoot.com> on 2005/03/01 00:29:25 UTC
Single user repos/working copy, multi-boot
SVN,
Everything is great.
I have a dual boot with XP and Gentoo.
A fat32 partition with my fsfs repository and working copy is between the
main OS partitions. d:\ gets mounted as /mnt/dmz when I boot Gentoo.
I understand how to write a script to detect the URL setting for the
working copy, and that I could use >svn switch to tweak that setting.
However, if the url setting is for the 'other' OS, I get an error.
a) Should I just switch over to the 'other' system, effect the
change, and reboot, or
b) Can I just use a script regex to update the url members of the XML
files safely? IOW, is that information only living in the XML.
(yeah, I could experiment, but why not just ask?)
Thanks,
Chris
---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@subversion.tigris.org
For additional commands, e-mail: users-help@subversion.tigris.org
Re: Single user repos/working copy, multi-boot
Posted by Chris Smith <sm...@bigfoot.com>.
>>>>> "Max" == Max Bowsher <ma...@ukf.net> writes:
Max> switch and switch --relocate are *VERY* different
Max> operations. You are doing the wrong one for your situation.
Max> Max.
Furthermore, my GNU URL was AFU. I had a spurious / in my file:///.
Thanks for the calibration, boss.
Chris
---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@subversion.tigris.org
For additional commands, e-mail: users-help@subversion.tigris.org
Re: Single user repos/working copy, multi-boot
Posted by Max Bowsher <ma...@ukf.net>.
Chris Smith wrote:
>>>>>> "Max" == Max Bowsher <ma...@ukf.net> writes:
>
> Max> Chris Smith wrote:
> >> SVN, Everything is great. I have a dual boot with XP and
> >> Gentoo. A fat32 partition with my fsfs repository and working
> >> copy is between the main OS partitions. d:\ gets mounted as
> >> /mnt/dmz when I boot Gentoo. I understand how to write a
> >> script to detect the URL setting for the working copy, and that
> >> I could use >svn switch to tweak that setting. However, if the
> >> url setting is for the 'other' OS, I get an error. a) Should I
> >> just switch over to the 'other' system, effect the change, and
> >> reboot, or b) Can I just use a script regex to update the url
> >> members of the XML files safely? IOW, is that information only
> >> living in the XML. (yeah, I could experiment, but why not just
> >> ask?)
>
> Max> Aaargh! DO NOT HAND EDIT THE XML!
>
> Max> "svn switch --relocate" is the proper command to use.
>
> Max> If this doesn't work for you then show us the exact usage and
> Max> exact error message.
>
> Max> Max.
>
> Summary:
> SVN switch --relocate seems to assert that the OS is constant.
>
> I think by 'HAND EDIT' you mean 'outside the SVN api', no? I would
> like to tweak Unix-style paths while operating under a Redmond
> operating system, and vice-versa.
> I get this error readout (hope pysvn is OK):
>
...
> svn.switch(this_path,new_path)
switch and switch --relocate are *VERY* different operations. You are doing
the wrong one for your situation.
Max.
---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@subversion.tigris.org
For additional commands, e-mail: users-help@subversion.tigris.org
Re: Single user repos/working copy, multi-boot
Posted by Chris Smith <sm...@bigfoot.com>.
>>>>> "Max" == Max Bowsher <ma...@ukf.net> writes:
Max> Chris Smith wrote:
>> SVN, Everything is great. I have a dual boot with XP and
>> Gentoo. A fat32 partition with my fsfs repository and working
>> copy is between the main OS partitions. d:\ gets mounted as
>> /mnt/dmz when I boot Gentoo. I understand how to write a
>> script to detect the URL setting for the working copy, and that
>> I could use >svn switch to tweak that setting. However, if the
>> url setting is for the 'other' OS, I get an error. a) Should I
>> just switch over to the 'other' system, effect the change, and
>> reboot, or b) Can I just use a script regex to update the url
>> members of the XML files safely? IOW, is that information only
>> living in the XML. (yeah, I could experiment, but why not just
>> ask?)
Max> Aaargh! DO NOT HAND EDIT THE XML!
Max> "svn switch --relocate" is the proper command to use.
Max> If this doesn't work for you then show us the exact usage and
Max> exact error message.
Max> Max.
Summary:
SVN switch --relocate seems to assert that the OS is constant.
I think by 'HAND EDIT' you mean 'outside the SVN api', no? I would
like to tweak Unix-style paths while operating under a Redmond
operating system, and vice-versa.
I get this error readout (hope pysvn is OK):
D:\proj\mddl2>python pysvn_switch.py
E
======================================================================
ERROR: test_toggle (__main__.Test_working_copy)
----------------------------------------------------------------------
Traceback (most recent call last):
File "pysvn_switch.py", line 41, in test_toggle
toggle_working_copy_urls()
File "pysvn_switch.py", line 35, in toggle_working_copy_urls
svn.switch(this_path,new_path)
ClientError: Unable to open an ra_local session to URL
Unable to open repository 'file:///mnt/dmz/arc/mddl'
----------------------------------------------------------------------
Ran 1 test in 1.091s
For the following script:
#--------8<-----------------------------------------------------------
import os
import unittest
import pysvn
"""
This script tries to support an fsfs repository in a dual-boot situation.
A FAT32 partition, known as the dmz (de-militarized zone) sits
between the NTFS and ext3 partitions.
Under Windows, projects live in d:\proj.
When the Gentoo boots, /etc/fstab mounts the FAT32 partition as /mnt/dmz.
"""
REPOSITORY_PATH_WIN = "d:/arc/mddl"
REPOSITORY_PATH_GNU = "/mnt/dmz/arc/mddl"
WORKING_COPY_PATH_WIN = "d:\\proj\\mddl2\\mddl"
WORKING_COPY_PATH_GNU = "/mnt/dmz/proj/mddl2/mddl"
COLON_POS = 9
def toggle_working_copy_urls():
svn = pysvn.Client()
this_os = os.environ["OS"]
if this_os == "Windows_NT":
this_path = WORKING_COPY_PATH_WIN
new_path = "file:///" + REPOSITORY_PATH_GNU
else:
this_path = WORKING_COPY_PATH_GNU
new_path = "file:///" + REPOSITORY_PATH_WIN
magic_char = str(svn.info(this_path))[COLON_POS:COLON_POS+1]
if magic_char == ":" and this_os == "Windows_NT":
pass
elif magic_char != ":" and this_os != "Windows_NT":
pass
else:
svn.switch(this_path,new_path)
class Test_working_copy(unittest.TestCase):
def setUp(self):
pass
def test_toggle(self):
toggle_working_copy_urls()
if __name__ == '__main__':
unittest.main()
#--------8<-----------------------------------------------------------
Thanks, boss.
Chris
---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@subversion.tigris.org
For additional commands, e-mail: users-help@subversion.tigris.org
Re: Single user repos/working copy, multi-boot
Posted by Max Bowsher <ma...@ukf.net>.
Chris Smith wrote:
> SVN,
> Everything is great.
> I have a dual boot with XP and Gentoo.
> A fat32 partition with my fsfs repository and working copy is between the
> main OS partitions. d:\ gets mounted as /mnt/dmz when I boot Gentoo.
> I understand how to write a script to detect the URL setting for the
> working copy, and that I could use >svn switch to tweak that setting.
> However, if the url setting is for the 'other' OS, I get an error.
> a) Should I just switch over to the 'other' system, effect the
> change, and reboot, or
> b) Can I just use a script regex to update the url members of the XML
> files safely? IOW, is that information only living in the XML.
> (yeah, I could experiment, but why not just ask?)
Aaargh! DO NOT HAND EDIT THE XML!
"svn switch --relocate" is the proper command to use.
If this doesn't work for you then show us the exact usage and exact error
message.
Max.
---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@subversion.tigris.org
For additional commands, e-mail: users-help@subversion.tigris.org