Binary file support

John Whitley whitley at acm.org
Fri Oct 14 23:26:51 BST 2005


Jan Hudec wrote:
>> I mean that text files may use different line endings on different
>> platforms: LF, CRLF, CR, other?
>>
>
> Well, next thing someone will request is charset conversion, then
> keyword expansion and whatnot else. Plugable filters are a reasonable
> way to go.

In my experience, line-ending mangement is a central use case for a  
version control system.  In most development shops I've worked in,  
there has been a wide mix of platforms, editors, and tools that devs  
use to work with versioned files.  Some of these environments are not  
well-behaved.  Some tools don't preserve line-endings, either  
flipping files of another convention or generating files with mixed  
line-endings.  Other tools require a specific line-ending convention  
to work correctly.  The real nightmare from this comes during  
merging: a file with a trivial change on one line and some/all line- 
endings having 'flipped' really screws up proper merge behavior.

While I'm all in favor of a pluggable filter system as a general and  
extensible implementation tool, I think that it's really important to  
have first-class support for managing line-endings on a per-branch  
and per-file basis.  As such, I'm keen to see that support be a  
property of the branch and its files -- not just a property of a  
single user's bzr installation.

-- John






More information about the bazaar mailing list