# .gitignore                         UTF-8                       2015-05-17
#
#                                 CORINTHIA/ROOT
#                                 ==============
#
#              .GITIGNORE FOR KEEPING BUILDS OUT OF THE REPOSITORY
#
#   This .gitignore file is designed to eliminate build setups and their
#   output from being committed to and carried in the repository.  This is
#   part of a structure where anyone can do multiple flavors of builds
#   along-side the source without cluttering the repository iself.


# Build results
build*/

# External downloads

# Finder directory status files (OS X)
.DS_Store


#                    *** end of .gitignore ***
