[prev in list] [next in list] [prev in thread] [next in thread] 

List:       subversion-issues
Subject:    [Issue 4070] New - forced update doesn't correct eols of existing
From:       pburba () tigris ! org
Date:       2011-11-28 17:55:59
Message-ID: iz4070 () subversion ! tigris ! org
[Download RAW message or body]

http://subversion.tigris.org/issues/show_bug.cgi?id=4070
                 Issue #|4070
                 Summary|forced update doesn't correct eols of existing obstruc
                        |tions
               Component|subversion
                 Version|trunk
                Platform|All
                     URL|
              OS/Version|All
                  Status|NEW
       Status whiteboard|
                Keywords|
              Resolution|
              Issue type|DEFECT
                Priority|P4
            Subcomponent|libsvn_client
             Assigned to|issues@subversion
             Reported by|pburba






------- Additional comments from pburba@tigris.org Mon Nov 28 09:55:58 -0800 2011 -------
Noticed this while reviewing r1205193: Recall that when checking out a working
copy on top of an existing unversioned directory we can use the --force option
to tolerate obstructions.  Any obstructions which differ from the incoming
checkout should remain behind as local modifications.  There is a minor bug
here: File obstructions are not converted to the correct line ending when the
incoming file has the svn:eol-style property set in a way which conflicts with
the unversioned obstructions line endings.

For example (on a windows box):

# Given a file with svn:eol-style=native property:

  >svn pl -vR %URL%
  Properties on 'file:///C:/SVN/src-trunk-2/Debug/
  subversion/tests/cmdline/svn-test-work/repositories/
  update_tests-66/iota':
    svn:eol-style
      native

# As expected the file has have native eols...

  >svn cat %URL%/iota > iota

  >type iota
  This is the file 'iota'.<CRLF>
  Line2<CRLF>
  Line3<CRLF>
  Line4<CRLF>

# ...but if we export the repository, modify the unversioned file's eols,
# and then do a forced checkout atop the unversioned tree, then the eols
# remain as they were in the unversioned obstruction:

  >svn export %URL% wc -q

  >type wc\iota
  This is the file 'iota'.<CRLF>
  Line2<CRLF>
  Line3<CRLF>
  Line4<CRLF>
 
  ...edit iota so eols change...
 
  >type wc\iota
  This is the file 'iota'.<LF>
  Line2<LF>
  Line3<LF>
  Line4<LF>
 
  >svn co %URL% wc --force
  E    wc\A
  E    wc\A\B
  E    wc\A\B\lambda
  ...
  E    wc\A\D\H\omega
  E    wc\A\D\H\psi
  E    wc\iota
  Checked out revision 2.

  >type wc\iota
  This is the file 'iota'.<LF>
  Line2<LF>
  Line3<LF>
  Line4<LF>

------------------------------------------------------
http://subversion.tigris.org/ds/viewMessage.do?dsForumId=463&dsMessageId=2888395

To unsubscribe from this discussion, e-mail: [issues-unsubscribe@subversion.tigris.org].
[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic