[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

Re: Working copy corruptions due to dual use of SVN on Linux and Windows against same working copy

From: Simon Large <simon.tortoisesvn_at_gmail.com>
Date: Tue, 20 Nov 2012 09:24:50 +0000

On 20 November 2012 08:02, Oto BREZINA <otik_at_printflow.eu> wrote:
> On 2012-11-20 2:12, Ben Johnson wrote:
>> On 11/19/2012 7:35 PM, Ben Fritz wrote:
>>> On Sat, Nov 17, 2012 at 6:25 AM, Andy Levy <andy.levy_at_gmail.com> wrote:
>>>>
>>>>
>>>> On Sat, Nov 17, 2012 at 3:41 AM, Guido Leenders
>>>> <Guido.Leenders_at_invantive.com> wrote:
>>>>> Hi,
>>>>>
>>>>> We are using SVN 1.7.7 (TortoiseSVN 1.7.10) on Windows and SVN 1.7.7 on
>>>>> Linux with Samba against the same working copies. The working copies are
>>>>> located on the home directory of the user (/home/XXX or h:\).
>>>>>
>>>>> Reason for such dual use is that some build software runs only on Windows
>>>>> and some only on Linux and there are no really reliable platform crossing
>>>>> mechanisms.
>>>>>
>>>>> This worked fine with SVN 1.6, but since a few weeks we are working with
>>>>> 1.7. We have tested 1.7 in our setup for months on a Windows only laptop and
>>>>> working copies had little to no problems.
>>>>
>>>> This is an unsupported and not-at-all recommended or encouraged scenario. If
>>>> it worked in the past, you were fortunate; no guarantees were ever made that
>>>> it would work, so breakage should not be unexpected.
>>>>
>>>> Never share working copies between OSes or users. Best practice has always
>>>> been one WC per OS per user.
>>>>
>>>> There is no way to "overcome this" aside from stopping the activity
>>>> altogether.
>>>>
>>> If this is a misuse, it is a quite common misuse. A quick google
>>> search turned up:
>>>
>>> http://stackoverflow.com/questions/3109939/moving-svn-working-copy-to-another-computer
>>> http://stackoverflow.com/questions/493820/how-do-i-copy-my-entire-working-copy-between-hard-drives
>>> http://stackoverflow.com/questions/1061383/safe-to-share-a-subversion-working-copy-between-os
>>>
>>> I've always had the impression, which I've shared with others, that an
>>> SVN working copy is just a set of files you can copy around and access
>>> from multiple systems like any other set of files.
>>>
>>> Other revision control systems work certainly don't complain if you
>>> use the same client version to interact with the some working copy on
>>> two different OSes. SVN doesn't normally, either.
>>>
>>> I understand that this particular case is from a user using two
>>> DIFFERENT versions of SVN, but it is VERY unexpected that the SAME
>>> version would cause problems. That's like opening a jpeg in an image
>>> editor on Linux and getting errors when opening the same jpeg in the
>>> same program on Windows.
>> Without knowing anything about the underlying structure of a working
>> copy, I would actually agree with original poster that a) this is a
>> desirable behavior (feature) and b) this somehow feels like an
>> "expected" feature in an SVN client.
>>
>> As someone who switches between operating systems routinely, I would
>> hope and expect that my working copies are usable from within either OS,
>> and with any SVN client. Like the OP, I have done this in the past, and
>> without issue (to my knowledge).
>>
>> That said, my experience has been that the SVN developers don't
>> undertake an action unless the rationale is sound (or well-intentioned,
>> at the least). So, I'm sure there is a good reason that we shouldn't
>> expect this capability.
>>
>> Would anyone with the technical background to comment be willing to walk
>> us through why cross-OS working copies are not possible and should not
>> be expected?
> This question is more for svn mailing list.
>
> Without going to deep in details (which I don't know anyway) I'll share
> my understanding.
>
> 1.6 was file based WC making it easy to copy and share - not really safe
> through.
>
> 1.7 is DB based. Do you expect you DB. (e.g. MySQL) databases data can
> be safely read from multiple platform, or even same platform in multiple
> instances?
> It may but it is not recommended.
> When switching OS/or user many states may be unhandled, rights may get
> wrong ...
> DB versions may not match, have different int size, or have whats ever
> difference.
>
> You are free to try but was informed that it is not supported - tested,
> was not intend to make it work - so don't be surprised.
> Actually I'm sharing my WC via samba between Linux and Windows (both
> ways) quite happily, but once my WC get corrupted or start to complain
> something, I'll know that's my problem ...

Exactly. The versioned files themselves are usable on both platforms
and as long as you use the same SVN client all the time it will work
fine. What is not supported is using a Linux client and a Windows
client on the same working copy for the reasons Oto explains.

Simon

--
:       ___
:  oo  // \\      "De Chelonian Mobile"
: (_,\/ \_/ \     TortoiseSVN
:   \ \_/_\_/>    The coolest Interface to (Sub)Version Control
:   /_/   \_\     http://tortoisesvn.net
------------------------------------------------------
http://tortoisesvn.tigris.org/ds/viewMessage.do?dsForumId=4061&dsMessageId=3029640
To unsubscribe from this discussion, e-mail: [users-unsubscribe_at_tortoisesvn.tigris.org].
Received on 2012-11-20 10:24:57 CET

This is an archived mail posted to the TortoiseSVN Users mailing list.