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

RE: Poor performance in windows. Switching back to CVS

From: Jan Hendrik <jan.hendrik_at_myrealbox.com>
Date: 2007-02-17 18:58:08 CET

Concerning RE: Poor performance in windows. Sw
Erik Hemdal wrote on 16 Feb 2007, 16:40, at least in part:

Erik, thanks for clearing this up for me!

> So one of your LAN PC's has the repository on it. And each user has a
> WC on his or her PC. Your web server doesn't have any Subversion at
> all, and you can't put any SVN stuff on it (I'm guessing that it's run
> by your ISP or someone who won't allow you to install any software).
> But you _can_ FTP files over.

Exactly. Rented webspace, lots of options, but no SVN and no
install of own software.

> You want a way to get the updates -- and only updates -- to the web
> server and you have a "smart" FTP client that uses timestamps to
> figure out how to avoid sending files it already has sent over. Is
> that right?

Exactly.

> If so, then a simple svn export won't help, because all the exported
> files are "new" and the FTP client ends up sending everything. And
> FTP'ing from a WC is also unhappy because of the file overhead if the
> FTP client is going to check all the .svn directories in the WC. This
> is at least what I gather from watching this thread for a while.

Yep, I've had a look at svn export, too, but lacking kind of update
option it doesn't help, and most likely it would not make any
difference at all. The .svn directories are no problem, they are
filtered out, TotalCommander supports wildcard and (I think) even
limited regex filtering for FTP sync.

> Might it help if you FTP from a WC but set up the FTP client to ignore
> any .svn folders it finds? Is that possible? Then you can have users
> check in from their "make changes" WC and set up a special WC in which
> you only do updates. The special one is the one that the FTP client
> works from, and no others. If the FTP client can ignore the WC .svn
> folders, perhaps this will help? Having a working copy on the web
> server would make it much simpler, but if you can't do that, maybe
> this can give you an idea for getting it done.

Actually this is about what I usually do, only that I also work on
this "special" WC. But that's not the problem: the editors set the
mod timestamps appropriately, FTP client sees these files have a
more recent date than their counterparts on the webserver, uploads
them, and then sets local timestamps of just the uploaded files to
the time they have got on the server. Thus still an even more
recent time than SVN knows for them and SVN checks them
dutifully and commits them as necessary. As long as things are
done this way as suggested there isn't any issue with timestamps
here.

The issue only arises if I have to upload from another WC (e.g.
"special" machine not available, urgent upload of some modification
in another WC otherwise not ready for commit) and in such a case
even a really special WC would not make a difference:

In that case as any other WC has timestamps like last commit or
last checkout/update FTP would consider them all for upload. So it
must be "teached" first, by resetting timestamps to webserver
timestamps. FTP then still sees modified files based on filesize
and as long as these are uploaded things get right for SVN again
as FTP then sets timestamps of these files to upload time again
(see above). If, however, such a file is not uploaded for any reason
SVN will never ever consider it for commit until further modifications
are done on it.

Sure, in all this the user has his hands in the game. But isn't that
the way half of all bugs come to light, the user doing something the
programmer has not thought of? As Jeff mentions himself solving
this with touch has its own issues because of .svn directories.
And touch is not readily available on Windows, the user needs to
have a port of Unix tools or something more intelligent than
Windows Explorer (like e.g. TotalCommander). OTOH a switch --
ignore-timestamps would be available for all SVN users, most likely
make it to checkbox option in the GUIs, and by this come to the
eye of also less savvy users wondering why their files are not
committed. Having SVN honoring mod times would help for most
of the occasions described above, though not cover others like the
file taken to the home box with the broken clock.

JH
---------------------------------------
Freedom quote:

     Manche Leute halten den Unternehmer für einen räudigen Wolf,
     den man totschlagen müsse. Andere sehen in ihm eine Kuh,
     die man ununterbrochen melken könne.
     Nur wenige erkennen in ihm das Pferd, das den Karren zieht.
               -- Sir Winston Churchill

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@subversion.tigris.org
For additional commands, e-mail: users-help@subversion.tigris.org
Received on Sat Feb 17 18:58:08 2007

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

This site is subject to the Apache Privacy Policy and the Apache Public Forum Archive Policy.