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

RE: Re: No way to force checkin?...

From: Peter Yamamoto <yamamotop_at_page44.com>
Date: 2006-10-29 23:24:51 CET

Sigh...

Who said anything about *wanting* to check in an infected file in the first place?
And anyway, it's pretty simple to think of people who do... Those that work on antivirus software.

The issue was that infected files were checked in before they were known to be infected. And then subversion wouldn't accept non-infected versions even though they were clearly different.

Version control is more than "source code" control for a single executable/library. If you are responsible for being able to reproduce a complete build of data and code (on any machine) then you better have everything that contributes to that build under version control so it can be easily reproduced... That includes executables and data files that are not built from other source in the project (eg external tools). This is not only common (for example in the game industry) it's kind of obvious if you've ever experienced the "it works on my machine" issue when two people who otherwise have the same version checked out from version control and yet still get different behavior.

Peter

-----Original Message-----
From: Stefan Küng [mailto:tortoisesvn@gmail.com]
Sent: Sunday, October 29, 2006 1:43 AM
To: users@tortoisesvn.tigris.org
Subject: Re: No way to force checkin?...

Peter Yamamoto wrote:
> use case: svn (1.3) apparently does not recognize some infected .exe
> files as different from the original.
> Hence, even if you have a clean version of the .exe, you cannot check
> it in!?
>
> is there any easy workaround? (I guess a rename operation? will that
> send content as well?).

Subversion is very smart and has detected that the files are infected.
That's why it won't allow you to commit the files. It protects itself from getting infected stuff into its repository.

Ok, now the real reason:
Usually, when a file gets infected, the last-modified time is reset the previous value by the virus so you won't detect the infection right away. But Subversion only considers files as modified if the last-modified time of a file differs from the one it has stored in the BASE. If that time is different, then Subversion checks some more to make sure the file is really modified. But if those times are identical, it won't even check and just assume that the file was not modified.

(and no, I won't even ask why you would want to commit an exe in the first place, and I don't wanna even know why you want to commit an
*infected* file)

Stefan

-- 
        ___
   oo  // \\      "De Chelonian Mobile"
  (_,\/ \_/ \     TortoiseSVN
    \ \_/_\_/>    The coolest Interface to (Sub)Version Control
    /_/   \_\     http://tortoisesvn.net
---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@tortoisesvn.tigris.org
For additional commands, e-mail: users-help@tortoisesvn.tigris.org
---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@tortoisesvn.tigris.org
For additional commands, e-mail: users-help@tortoisesvn.tigris.org
Received on Sun Oct 29 23:24:58 2006

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