|
Version Control with Subversion - Properties -
svn:mime-type
The svn:mime-type property serves
many purposes in Subversion. Besides being a
general-purpose storage location for a file's Multipurpose
Internet Mail Extensions (MIME) classification, the value of
this property determines some behavioral characteristics
of Subversion itself.
For example, if a file's
svn:mime-type property is set to a
non-text MIME type (generally, something that doesn't begin
with text/ , though there are exceptions),
Subversion will assume that the file contains
binary—that is, not human-readable—data. One of
the benefits that Subversion typically provides is
contextual, line-based merging of changes received from the
server during an update into your working file. But for
files believed to contain binary data, there is no concept
of a “line”. So, for those files, Subversion
does not attempt to perform contextual merges during
updates. Instead, any time you have locally modified a
binary working copy file that is also being updated, your
file is renamed with a .orig extension,
and then Subversion stores a new working copy file that
contains the changes received during the update, but not
your own local modifications, at the original filename.
This behavior is really for the protection of the user
against failed attempts at performing contextual merges on
files that simply cannot be contextually merged.
Also, if the svn:mime-type
property is set, then the Subversion Apache module will use
its value to populate the Content-type:
HTTP header when responding to GET requests. This gives a
crucial clue about how to display a file when perusing
your repository with a web browser.
[an error occurred while processing this directive]
|
|