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

Re: How do I get Subversion to notice my changes?

From: Ryan Schmidt <subversion-2007a_at_ryandesign.com>
Date: 2007-03-22 00:27:37 CET

On Mar 21, 2007, at 15:01, Ralf Schuchardt wrote:

> I have a problem getting Subversion to notice a file change?
>
> This is corrupted file I actual have in my Subversion repository,
> which I want to replace with a good version:
>
> april:~/projekte/svnbase/projekte/DarmkrebsTK/Docs ralf$ ls -l
> Software_Vorstellung_Burda.ppt
> -rwxr-xr-x 1 ralf DOCXCELL 170997 Mar 21 20:46
> Software_Vorstellung_Burda.ppt
>
> april:~/projekte/svnbase/projekte/DarmkrebsTK/Docs ralf$ svn info
> Software_Vorstellung_Burda.ppt
> Path: Software_Vorstellung_Burda.ppt
> Name: Software_Vorstellung_Burda.ppt
> URL: http://repos.docxcellence.lan/svn/projekte/DarmkrebsTK/trunk/
> Docs/Software_Vorstellung_Burda.ppt
> Repository Root: http://repos.docxcellence.lan/svn
> Repository UUID: 69e99f15-a62b-0410-a2d1-f5e980437719
> Revision: 2092
> Node Kind: file
> Schedule: normal
> Last Changed Author: ralf
> Last Changed Rev: 2092
> Last Changed Date: 2007-03-21 20:37:14 +0100 (Wed, 21 Mar 2007)
> Text Last Updated: 2007-03-21 20:46:13 +0100 (Wed, 21 Mar 2007)
> Checksum: 4d0eeb6225f2fca1c4e52e5f7708a0ee
>
> This is my good version of the file:
>
> april:~/projekte/svnbase/projekte/DarmkrebsTK/Docs ralf$ ls -l ~/
> projekte/cvsbase/projektDarmkrebsTK/Docs/
> Software_Vorstellung_Burda.ppt
> -rwxr-xr-x 1 ralf DOCXCELL 171008 Sep 12 2005 /Users/ralf/
> projekte/cvsbase/projektDarmkrebsTK/Docs/
> Software_Vorstellung_Burda.ppt
>
> Diff reports them as different:
>
> april:~/projekte/svnbase/projekte/DarmkrebsTK/Docs ralf$ diff ~/
> projekte/cvsbase/projektDarmkrebsTK/Docs/
> Software_Vorstellung_Burda.ppt Software_Vorstellung_Burda.ppt
> Binary files /Users/ralf/projekte/cvsbase/projektDarmkrebsTK/Docs/
> Software_Vorstellung_Burda.ppt and Software_Vorstellung_Burda.ppt
> differ
>
> Now I copy the good over the bad one:
>
> april:~/projekte/svnbase/projekte/DarmkrebsTK/Docs ralf$ cp ~/
> projekte/cvsbase/projektDarmkrebsTK/Docs/
> Software_Vorstellung_Burda.ppt Software_Vorstellung_Burda.ppt
> april:~/projekte/svnbase/projekte/DarmkrebsTK/Docs ralf$ ls -l
> Software_Vorstellung_Burda.ppt
> -rwxr-xr-x 1 ralf DOCXCELL 171008 Mar 21 20:51
> Software_Vorstellung_Burda.ppt
>
> But somehow Subversion doesn't notice?
>
> april:~/projekte/svnbase/projekte/DarmkrebsTK/Docs ralf$ svn status
> april:~/projekte/svnbase/projekte/DarmkrebsTK/Docs ralf$
>
> april:~/projekte/svnbase/projekte/DarmkrebsTK/Docs ralf$ diff ~/
> projekte/cvsbase/projektDarmkrebsTK/Docs/
> Software_Vorstellung_Burda.ppt Software_Vorstellung_Burda.ppt
> april:~/projekte/svnbase/projekte/DarmkrebsTK/Docs ralf$
>
> april:~/projekte/svnbase/projekte/DarmkrebsTK/Docs ralf$ stat -x
> Software_Vorstellung_Burda.ppt
> File: "Software_Vorstellung_Burda.ppt"
> Size: 171008 FileType: Regular File
> Mode: (0755/-rwxr-xr-x) Uid: (455477192/ ralf) Gid:
> (1834435483/DOCXCELLENCE\domänen-benutzer)
> Device: 14,2 Inode: 2937492 Links: 1
> Access: Wed Mar 21 20:51:34 2007
> Modify: Wed Mar 21 20:51:34 2007
> Change: Wed Mar 21 20:51:34 2007
>
> april:~/projekte/svnbase/projekte/DarmkrebsTK/Docs ralf$ svn info
> Software_Vorstellung_Burda.ppt
> Path: Software_Vorstellung_Burda.ppt
> Name: Software_Vorstellung_Burda.ppt
> URL: http://repos.docxcellence.lan/svn/projekte/DarmkrebsTK/trunk/
> Docs/Software_Vorstellung_Burda.ppt
> Repository Root: http://repos.docxcellence.lan/svn
> Repository UUID: 69e99f15-a62b-0410-a2d1-f5e980437719
> Revision: 2092
> Node Kind: file
> Schedule: normal
> Last Changed Author: ralf
> Last Changed Rev: 2092
> Last Changed Date: 2007-03-21 20:37:14 +0100 (Wed, 21 Mar 2007)
> Text Last Updated: 2007-03-21 20:46:13 +0100 (Wed, 21 Mar 2007)
> Checksum: 4d0eeb6225f2fca1c4e52e5f7708a0ee
>
> I can even touch it, without any difference:
>
> april:~/projekte/svnbase/projekte/DarmkrebsTK/Docs ralf$ touch -m
> -a Software_Vorstellung_Burda.ppt
> april:~/projekte/svnbase/projekte/DarmkrebsTK/Docs ralf$ svn status
> april:~/projekte/svnbase/projekte/DarmkrebsTK/Docs ralf$
>
> So, how do I get the new version into my repository?

"touch" would not have any effect in any case, since Subversion does
not version modification dates, therefore just changing a file's
modification date is rather irrelevant to Subversion.

I suspect the reason why the file was corrupted in the first place is
because you have asked Subversion to do either keyword substitution
or line-ending translation on the binary file. You checked it in,
noticed it was corrupted, and replaced it with a working version.
When you ran svn status, Subversion still doesn't think it's
different, because it's still doing line-ending translation and/or
keyword substitution. Check "svn proplist -v
Software_Vorstellung_Burda.ppt" to see what properties are set. If
svn:eol-style is set, you will want to remove it with "svn propdel
svn:eol-style Software_Vorstellung_Burda.ppt". If svn:keywords is
set, you may want to remove it too. (Note that fixed-width keyword
substitution is usually fine for binary files, but variable-width
keyword substitution usually is not.) Then you can replace it with a
good copy and it should commit just fine.

Perhaps you set up auto-props to automatically set properties on all
files, including binary files, by using a rule starting with just an
asterisk ("*")? If so, you will want to not define rules like that.
Instead, define auto-props rules identifying only the file extensions
where you actually want these properties to be applied.

If you had set up auto-props as I suspect, such that they also
touched binary files, you will now want to examine all binary files
in your repository to see if they have been similarly corrupted.

-- 
To reply to the mailing list, please use your mailer's Reply To All  
function
---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@subversion.tigris.org
For additional commands, e-mail: users-help@subversion.tigris.org
Received on Thu Mar 22 00:28:10 2007

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