You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@subversion.apache.org by Norbert Unterberg <nu...@gmail.com> on 2005/06/25 07:48:13 UTC
WebDav Autoversioning Questions/Problems
While playing around with the webdav autoversioning feature, I noticed
some effects that might be bugs, problems or known features, I don't
know. Maybe you can enlighten me.
I have a simple svn setup on windows XP on a apache 2.0.54 server,
with SVNAutoversioning on. What happens to me is:
* When creating a word document (MS Word 2000) using the integrated
client (File --> save as ... --> http://path/to/repos/test.doc) the
file is saved without problems. But the file is not marked as binary
as it would have when adding with the command line client.
* When getting a text file via WebDav, no keyword expansion or CRLF
conversion is done. That means that a text file with svn:eol-style =
native gets unix line endings on windows.
* When editing that text file on windows it might get a mixture of LF
and CRLF endings. What happens to the line endings when I put it back
into the repos using WebDav? Does it get corrupt or is the "damage"
repaired on the next checkout?
Slightly off-topic: Does anyone know if a command line exists to start
ms word as a subversion diff viewer for word files, something like
msword /compare file1.doc file2.doc? Word has a file compare built-in,
but can it be triggerd from command line?
Norbert
---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@subversion.tigris.org
For additional commands, e-mail: users-help@subversion.tigris.org
Re: WebDav Autoversioning Questions/Problems
Posted by Charles Bailey <ba...@gmail.com>.
On 6/26/05, Ben Collins-Sussman <su...@collab.net> wrote:
>
> On Jun 26, 2005, at 4:20 PM, Norbert Unterberg wrote:
>
> > 2005/6/26, Ben Collins-Sussman <su...@collab.net>:
> >
> >>
> >> Autoversioning is probably best for teams that are are *only*
> >> autoversioning.
> >>
> >
> > How about putting a warning like that into the autoversioning chapter?
> > The appendix B in the current nightly tells about the advantages of
> > WebDAV in a way that many admins might think it would be a nice add-on
> > to their existing repository to allow users WebDAV access to the
> > files. At least a warning should be present that the usual client
> > filter mechanisms like binary file detection, keyword expansion and
> > CRLF conversion will not take place. Or may that they might even
> > "hickup" their normal clients? This sounds too serious to let the user
> > make their own experiences without beeing warned.
Hmm. Leaving aside for a moment stickiness with implementation --
which would at least involve linking some "client" functions into
mod_dav_svn -- would it make sense for Subversion to treat clients
other than the ra_dav library differently, and perform the "usual"
client pre/postprocessing of files?
--
Regards,
Charles Bailey
Lists: bailey _dot_ charles _at_ gmail _dot_ com
Other: bailey _at_ newman _dot_ upenn _dot_ edu
---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@subversion.tigris.org
For additional commands, e-mail: users-help@subversion.tigris.org
Re: WebDav Autoversioning Questions/Problems
Posted by Ben Collins-Sussman <su...@collab.net>.
On Jun 26, 2005, at 4:20 PM, Norbert Unterberg wrote:
> 2005/6/26, Ben Collins-Sussman <su...@collab.net>:
>
>>
>> Autoversioning is probably best for teams that are are *only*
>> autoversioning.
>>
>
> How about putting a warning like that into the autoversioning chapter?
> The appendix B in the current nightly tells about the advantages of
> WebDAV in a way that many admins might think it would be a nice add-on
> to their existing repository to allow users WebDAV access to the
> files. At least a warning should be present that the usual client
> filter mechanisms like binary file detection, keyword expansion and
> CRLF conversion will not take place. Or may that they might even
> "hickup" their normal clients? This sounds too serious to let the user
> make their own experiences without beeing warned.
>
Good idea, thanks.
---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@subversion.tigris.org
For additional commands, e-mail: users-help@subversion.tigris.org
Re: WebDav Autoversioning Questions/Problems
Posted by Norbert Unterberg <nu...@gmail.com>.
2005/6/26, Ben Collins-Sussman <su...@collab.net>:
>
> Autoversioning is probably best for teams that are are *only*
> autoversioning.
How about putting a warning like that into the autoversioning chapter?
The appendix B in the current nightly tells about the advantages of
WebDAV in a way that many admins might think it would be a nice add-on
to their existing repository to allow users WebDAV access to the
files. At least a warning should be present that the usual client
filter mechanisms like binary file detection, keyword expansion and
CRLF conversion will not take place. Or may that they might even
"hickup" their normal clients? This sounds too serious to let the user
make their own experiences without beeing warned.
Norbert
---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@subversion.tigris.org
For additional commands, e-mail: users-help@subversion.tigris.org
Re: WebDav Autoversioning Questions/Problems
Posted by Ben Collins-Sussman <su...@collab.net>.
On Jun 25, 2005, at 10:19 AM, Norbert Unterberg wrote:
>
> But the repository hooks are called, aren't they?
>
Yep, it's still a 'normal' commit in that sense.
>
> When you have a ASCII text file in your repository with svn:eol-style
> native, the file is stored internally with LF line endings, right?
Correct.
> When a user modifies this file using WebDav and manages to put CRLF
> line endings into that file, would a svn client hickup and fail on the
> next checkout, or would the file get the correct line endings on the
> next svn update/commit cycle?
>
Ooh, yes, I imagine it could definitely cause client failure. If
svn:eol-style=native and the repository (text-base) file has
something other than LF endings, the client tends to choke. We've
seen this happen with cvs2svn.py conversions gone bad... but you're
right, I suspect autoversioning could cause the same problem!
Then again: this just another good reason not to mix 'normal' svn
clients with autoversioning. Not only might this line-ending stuff
get messed up, but it's just dangerous, because there's no real
merging going on. Suppose a normal svn client uploads a new version
of a file, and then 1 second later a DAV client blindly overwrites
it? Sure, locking can prevent that, but in general it seems like a
bad idea to have half your users doing "real" version control with
working-copy merges, and the other half of your users doing blind
overwrites to the repository.
Autoversioning is probably best for teams that are are *only*
autoversioning.
---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@subversion.tigris.org
For additional commands, e-mail: users-help@subversion.tigris.org
Re: WebDav Autoversioning Questions/Problems
Posted by Norbert Unterberg <nu...@gmail.com>.
2005/6/25, Ben Collins-Sussman <su...@collab.net>:
> DAV is just dumb file-sharing protocol over HTTP.
ok ok, I got it now, no need to repeat it three times. From the book I
got the expression that WebDav access could be used as some sort of a
svn client repacement for users that only need to do some
documentation on our project, without teaching them about version
control. I believed that the WebDav way into the repository was just
another access method into the repository without bypassing all these
nice features clients have.
Thanks for clarification. It means that I need to be quite careful
when allowing autoversioning in my repository.
But the repository hooks are called, aren't they?
> > Does it get corrupt or is the "damage"
> > repaired on the next checkout?
Let me ask this question in a different way:
When you have a ASCII text file in your repository with svn:eol-style
native, the file is stored internally with LF line endings, right?
When a user modifies this file using WebDav and manages to put CRLF
line endings into that file, would a svn client hickup and fail on the
next checkout, or would the file get the correct line endings on the
next svn update/commit cycle?
Norbert
---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@subversion.tigris.org
For additional commands, e-mail: users-help@subversion.tigris.org
Re: WebDav Autoversioning Questions/Problems
Posted by Ben Collins-Sussman <su...@collab.net>.
On Jun 25, 2005, at 2:48 AM, Norbert Unterberg wrote:
>
> * When creating a word document (MS Word 2000) using the integrated
> client (File --> save as ... --> http://path/to/repos/test.doc) the
> file is saved without problems. But the file is not marked as binary
> as it would have when adding with the command line client.
Correct, that's strictly a subversion client feature. WebDAV clients
have no idea about binary vs. text. They don't care, and they don't
try to deduce like the svn client does. There *is* a standard DAV
property for representing mime-type (DAV:getcontenttype), but I've
never seen a DAV client automatically set it the way the svn client
tries to automatically set the svn:mime-type property.
>
> * When getting a text file via WebDav, no keyword expansion or CRLF
> conversion is done. That means that a text file with svn:eol-style =
> native gets unix line endings on windows.
Again, keyword expansion and EOL conversion are concepts that only
exist in version control systems, not generic WebDAV, which is
nothing more than a dumb file-sharing protocol. Keyword expansion
and EOL conversions are features exclusive to subversion clients.
(The subversion server has nothing to do with data-munging, and never
has. It stores exactly what it's given, and returns it later byte-
for-byte.)
>
> * When editing that text file on windows it might get a mixture of LF
> and CRLF endings. What happens to the line endings when I put it back
> into the repos using WebDav?
DAV is just dumb file-sharing protocol over HTTP. No examination of
file contents is going on. Your question is equivalent to asking,
"what happens to line endings if I write the file to an NFS share?"
Nothing at all. The server never munges data. All of the data-
munging features you're looking for are entirely subversion-client
niceities.
> Does it get corrupt or is the "damage"
> repaired on the next checkout?
Corruption is corruption, there's nothing available to notice or
repair file contents.
Caveat emptor... which means, "we hope you like it!" :-)
---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@subversion.tigris.org
For additional commands, e-mail: users-help@subversion.tigris.org
Re: WebDav Autoversioning Questions/Problems
Posted by Chris Jensen <cj...@edex.com.au>.
Hi Norbert,
> * When creating a word document (MS Word 2000) using the integrated
> client (File --> save as ... --> http://path/to/repos/test.doc) the
> file is saved without problems. But the file is not marked as binary
> as it would have when adding with the command line client.
>
> * When getting a text file via WebDav, no keyword expansion or CRLF
> conversion is done. That means that a text file with svn:eol-style =
> native gets unix line endings on windows.
>
> * When editing that text file on windows it might get a mixture of LF
> and CRLF endings. What happens to the line endings when I put it back
> into the repos using WebDav? Does it get corrupt or is the "damage"
> repaired on the next checkout?
I believe all of these conversions when done using normal subversion
interaction would be done by the subversion client (not so sure about
the first one, but the second and third ones I'm fairly sure about). So
when you use WebDAV you're replacing the svn client, with another client
that doesn't know about keyword expansion or svn: properties, so none of
this takes place.
Chris
--
---------------------------------------------------------------------
Chris Jensen cjensen@edex.com.au
Educational Experience (Australia)
Postal Address: PO Box 860, Newcastle NSW 2300
Freecall: 1-800-025 270 International: +61-2-4923 8222
Fax: (02) 4942 1991 International: +61-2-4942 1991
Visit our online Toy store! http://www.toysandmore.com.au/
---------------------------------------------------------------------