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

RE: Ignore date changes to files

From: Mark Phippard <markp_at_softlanding.com>
Date: 2005-11-21 19:21:47 CET

"Gale, David" <David.Gale@Hypertherm.com> wrote on 11/21/2005 01:13:16 PM:

> Rob Brandt wrote:
> > Hi. I'm new to subversion. I'm using it with TortoiseSVN.
> >
> > One of the project I want it to manage is a desktop app being
> > designed in a 4GL programming tool. It's project files are saved as
> > binary. Each time the project is loaded *each* of it's libraries is
> > touched and the file date is updated, even if no changes are made to
> > the code. This causes svn to update each of the libraries in the
> > commit, which is incredibly wasteful. Several megabytes of files is
> > uploaded with each commit even if I opened the project just to change
> > one line of code in a 25k file.
> >
> > Is there any way around this? I previously used a commercial scm
> > tool called NG3, and it worked nicely for this project as it ignored
> > dates and looked only for actual binary changes in the files.
>
> I'm not sure I understand. Have you verified that there're several megs
> of data sent to the repository per commit? Subversion uses a binary
> diff, and only sends the differences, so if the only change is really to
> the file modification date, there shouldn't be any appreciable network
> traffic at all. (It may flag the files as having been changed, but
> that's relatively minor.) Have you watched the size of your repository
> grow?

Subversion does not consider a file as changed simply because its date has
changed. Go ahead and try it. Open a file insert a space, hit backspace
and then save it.

Subversion look at the file date/time and if it has changed:

1) Subversion then looks at the file size. If that has changed, then it
considers the file as modified.

2) If the file size is still the same, then Subversion does a byte by
byte comparison of the two files to see if they are different.

As was pointed out, when you do a commit it then only sends the delta over
the wire. With some binary formats, this can wind up being a very large
delta.

Mark

_____________________________________________________________________________
Scanned for SoftLanding Systems, Inc. and SoftLanding Europe Plc by IBM Email Security Management Services powered by MessageLabs.
_____________________________________________________________________________

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@subversion.tigris.org
For additional commands, e-mail: users-help@subversion.tigris.org
Received on Mon Nov 21 19:26:33 2005

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.