Alexander Litvinov <litvinov2004@gmail.com> wrote:
Disclaimer: I'm not yet familiar with git attributes, having never used them.
As far as I can tell, SVN itself will store files with either LF or CRLF
in the repository when the file is created/updated and applies the line
conversion properties only to the working tree upon checkout. This
means that the SVN repository can have a file that's LF but only
converted to CRLF when checked out and vice-versa.
git-svn takes and imports whatever raw data SVN gives it, ignoring any
properties set in SVN. This is very important because SVN transfers
deltas for updating files, and if we change the base file; we can't
apply the delta SVN gives us.
If we converted the newlines in the raw data that SVN gave us, we would
need to store what format the original data we got from SVN was in
because of the delta.
What I assume svn does is it either:
a) reconverts before doing `svn update' or `svn switch'
b) it ignores newline-only changes when running `svn status' or `svn diff'
git (as far as I know, and hope) does neither.
--
Eric Wong
-
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html