Boost logo

Boost :

Subject: Re: [boost] Git Modularization hiccups
From: Paul A. Bristow (pbristow_at_[hidden])
Date: 2013-05-24 05:03:48


> -----Original Message-----
> From: Boost [mailto:boost-bounces_at_[hidden]] On Behalf Of Lars Viklund
> Sent: Friday, May 24, 2013 7:18 AM
> To: boost_at_[hidden]
> Subject: Re: [boost] Git Modularization hiccups
>
> On Thu, May 23, 2013 at 11:00:19PM -0700, Dave Abrahams wrote:
> >
> > on Thu May 23 2013, Lars Viklund <zao-AT-acc.umu.se> wrote:
> >
> > > On Thu, May 23, 2013 at 09:37:32PM -0700, Dave Abrahams wrote:
> > >>
> > >> on Thu May 23 2013, Beman Dawes <bdawes-AT-acm.org> wrote:
> > >> > The remaining hiccups are in the root directory, comparing trunk
> > >> > to master:
> > >> >
> > >
> > >> > * boost.css is missing content from revisions 36243 and 53553.
> > >> >
> > >> > * boost-build.jam has different comments and history. Something
> > >> > is totally whacky.
> > >> >
> > >> > * boostcpp.py contents are the same, but the trunk file has Unix
> > >> > line endings, the master file has Windows line endings.
> > >>
> > >> Oh well, the way line endings are handled in Git and SVN are divergent.
> > >> Check your .gitconfig against the output of git --help config;
> > >> especially core.eol, core.safecrlf, and core.autocrlf
> > >
> > > Shouldn't the repositories contain a .gitattributes file indicating
> > > the eol flavor to be used for text files where it has significance?
> >
> > Perhaps! I don't know anything about .gitattributes. Where can I
> > find out more?
>
> A decent introduction can be found in the Github help pages [1] and in this blog post [2].
>
> You would essentially have entries like:
> *.sh text eol=lf
>
> I'm not quite sure how it all fits together with the config flags, but as I understand it, it's
one of the
> major puzzle pieces in getting a behaviour similiar to the one enforced by our Subversion.
>
> Some testing would probably be required to see how the final solution turns out on different
clients on
> the platforms.
>
> [1] https://help.github.com/articles/dealing-with-line-endings
> [2] http://timclem.wordpress.com/2012/03/01/mind-the-end-of-your-line/

This caused quite a bit of grief with the several types of files in documentation, like jpg, svg,
png, and others I don't recall immediately.

Finding that you can't commit is really unwanted when you are fumbling with a new tool like GIT.

These were missing from the SVN setup file suggested as standard. My current list is

[auto-props]
# Scriptish formats
*.bat = svn:eol-style=native; svn:keywords=Id; svn:mime-type=text/plain
*.bsh = svn:eol-style=native; svn:keywords=Id; svn:mime-type=text/x-beanshell
*.cgi = svn:eol-style=native; svn:keywords=Id; svn:mime-type=text/plain
*.cmd = svn:eol-style=native; svn:keywords=Id; svn:mine-type=text/plain
*.js = svn:eol-style=native; svn:keywords=Id; svn:mime-type=text/javascript
*.php = svn:eol-style=native; svn:keywords=Id Rev Date; svn:mime-type=text/x-php
*.pl = svn:eol-style=native; svn:keywords=Id; svn:mime-type=text/x-perl; svn:executable
*.pm = svn:eol-style=native; svn:keywords=Id; svn:mime-type=text/x-perl
*.py = svn:eol-style=native; svn:keywords=Id; svn:mime-type=text/x-python; svn:executable
*.sh = svn:eol-style=LF; svn:keywords=Id; svn:mime-type=text/x-sh; svn:executable
configure = svn:eol-style=LF; svn:keywords=Id; svn:mime-type=text/x-sh; svn:executable

# Image formats
*.bmp = svn:mime-type=image/bmp
*.gif = svn:mime-type=image/gif
*.ico = svn:mime-type=image/ico
*.jpeg = svn:mime-type=image/jpeg
*.jpg = svn:mime-type=image/jpeg
*.png = svn:mime-type=image/png
*.tif = svn:mime-type=image/tiff
*.tiff = svn:mime-type=image/tiff
*.svg = svn:eol-style=native; svn:mime-type=text/svg+xml

# Data formats
*.pdf = svn:mime-type=application/pdf
*.avi = svn:mime-type=video/avi
*.doc = svn:mime-type=application/msword
*.dsp = svn:mime-type=text/plain;svn:eol-style=CRLF
*.dsw = svn:mime-type=text/plain;svn:eol-style=CRLF
*.eps = svn:mime-type=application/postscript
*.gz = svn:mime-type=application/gzip
*.mov = svn:mime-type=video/quicktime
*.mp3 = svn:mime-type=audio/mpeg
*.ppt = svn:mime-type=application/vnd.ms-powerpoint
*.ps = svn:mime-type=application/postscript
*.psd = svn:mime-type=application/photoshop
*.rdf = svn:eol-style=native;svn:keywords=Id
*.rss = svn:eol-style=native;svn:keywords=Id
*.rtf = svn:mime-type=text/rtf
*.sln = svn:eol-style=native;svn:mime-type=text/plain
*.swf = svn:mime-type=application/x-shockwave-flash
*.tgz = svn:mime-type=application/gzip
*.vcproj = svn:eol-style=native;svn:mime-type=text/xml
*.vsprops = svn:eol-style=native;svn:mime-type=text/xml
*.wav = svn:mime-type=audio/wav
*.xls = svn:mime-type=application/vnd.ms-excel
*.zip = svn:mime-type=application/zip

# Text formats
.htaccess = svn:eol-style=native; svn:keywords=Id; svn:mime-type=text/plain
*.bbk = svn:eol-style=native; svn:keywords=Id; svn:mime-type=text/xml
*.cmake = svn:eol-style=native; svn:keywords=Id; svn:mime-type=text/plain
*.css = svn:eol-style=native; svn:keywords=Id; svn:mime-type=text/css
*.dtd = svn:eol-style=native; svn:keywords=Id; svn:mime-type=text/xml
*.htm = svn:eol-style=native; svn:keywords=Id; svn:mime-type=text/html
*.html = svn:eol-style=native; svn:keywords=Id; svn:mime-type=text/html
*.idx = svn:eol-style=native; svn:keywords=Id; svn:mime-type=text/plain
*.ini = svn:eol-style=native; svn:keywords=Id; svn:mime-type=text/plain
*.log = svn:eol-style=native; svn:keywords=Id; svn:mime-type=text/plain
*.mak = svn:eol-style=native; svn:keywords=Id; svn:mime-type=text/plain
*.qbk = svn:eol-style=native; svn:keywords=Id; svn:mime-type=text/plain
*.rst = svn:eol-style=native; svn:keywords=Id; svn:mime-type=text/plain
*.sql = svn:eol-style=native; svn:keywords=Id; svn:mime-type=text/x-sql
*.txt = svn:eol-style=native; svn:keywords=Id; svn:mime-type=text/plain
*.xhtml = svn:eol-style=native; svn:keywords=Id; svn:mime-type=text/xhtml+xml
*.xml = svn:eol-style=native; svn:keywords=Id; svn:mime-type=text/xml
*.mml = svn:eol-style=native; svn:keywords=Id; svn:mime-type=text/xml
*.xsd = svn:eol-style=native; svn:keywords=Id; svn:mime-type=text/xml
*.xsl = svn:eol-style=native; svn:keywords=Id; svn:mime-type=text/xml
*.xslt = svn:eol-style=native; svn:keywords=Id; svn:mime-type=text/xml
*.xul = svn:eol-style=native; svn:keywords=Id; svn:mime-type=text/xul
*.yml = svn:eol-style=native; svn:keywords=Id; svn:mime-type=text/plain
CHANGES = svn:eol-style=native; svn:keywords=Id; svn:mime-type=text/plain
COPYING = svn:eol-style=native; svn:keywords=Id; svn:mime-type=text/plain
INSTALL = svn:eol-style=native; svn:keywords=Id; svn:mime-type=text/plain
Jamfile = svn:eol-style=native; svn:keywords=Id; svn:mime-type=text/plain
Jamroot = svn:eol-style=native; svn:keywords=Id; svn:mime-type=text/plain
Jamfile.v2 = svn:eol-style=native; svn:keywords=Id; svn:mime-type=text/plain
Jamrules = svn:eol-style=native; svn:keywords=Id; svn:mime-type=text/plain
Makefile* = svn:eol-style=native; svn:keywords=Id; svn:mime-type=text/plain
README = svn:eol-style=native; svn:keywords=Id; svn:mime-type=text/plain
TODO = svn:eol-style=native; svn:keywords=Id; svn:mime-type=text/plain

# Code formats
*.c = svn:eol-style=native; svn:keywords=Id; svn:mime-type=text/plain
*.cpp = svn:eol-style=native; svn:keywords=Id; svn:mime-type=text/plain
*.h = svn:eol-style=native; svn:keywords=Id; svn:mime-type=text/plain
*.hpp = svn:eol-style=native; svn:keywords=Id; svn:mime-type=text/plain
*.ipp = svn:eol-style=native; svn:keywords=Id; svn:mime-type=text/plain
*.tpp = svn:eol-style=native; svn:keywords=Id; svn:mime-type=text/plain
*.jam = svn:eol-style=native; svn:keywords=Id; svn:mime-type=text/plain
*.java = svn:eol-style=native; svn:keywords=Id; svn:mime-type=text/plain

I hope we will have all of these - and more - including .sh and .bat.

Paul

---
Paul A. Bristow,
Prizet Farmhouse, Kendal LA8 8AB  UK
+44 1539 561830  07714330204
pbristow_at_[hidden]

Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk