1
0
mirror of https://bitbucket.org/librepilot/librepilot.git synced 2024-11-28 06:24:10 +01:00

OP-772: Enforce line ending agreements (git 1.7.2+ required for this to work)

This is a part of OP-726, OP-727 tasks to normalize source code.
Use the following to normalise your local repository to be able to merge:

git rm --cached -r .
git diff --cached --name-only -z | xargs -0 git add
git commit -m "Normalise line endings"
git ls-files -z | xargs -0 rm
git checkout .
This commit is contained in:
Oleg Semyonov 2013-04-05 23:43:58 +03:00
parent 9b11ef2111
commit 3bebec22f7
7 changed files with 91 additions and 0 deletions

31
.gitattributes vendored Normal file
View File

@ -0,0 +1,31 @@
#
# Line endings normalization: http://wiki.openpilot.org/display/Doc/Coding+Style
# You need at least git 1.7.2 for this to work (previous versions ignore text and eol attributes).
#
# Make sure you have committed all local changes first. Then use the following bash commands
# to normalize your local repository to be able to merge it with a mainline:
#
# Minimal normalization:
# git rm --cached -r .
# git reset --hard
# git add .
# git commit -m "Normalize line endings"
#
# Or full normalization (don't do that on Windows, it breaks file modes):
# git rm --cached -r .
# git diff --cached --name-only -z | xargs -0 git add
# git commit -m "Normalize line endings"
# git ls-files -z | xargs -0 rm
# git checkout .
#
# Set default behaviour (do not convert line endings regardless of local git core settings)
* -text
# All *.txt files in the root should be Windows-readable (CRLF)
/*.txt text eol=crlf
# Root Makefile has LF line endings
/Makefile text eol=lf
# More attributes are defined in per-directory .gitattributes which override this file

17
flight/.gitattributes vendored Normal file
View File

@ -0,0 +1,17 @@
#
# Flight source code files should always have LF line endings by agreement
# http://wiki.openpilot.org/display/Doc/Coding+Style
#
*.c text eol=lf
*.h text eol=lf
*.py text eol=lf
*.s text eol=lf
*.S text eol=lf
*.ld text eol=lf
*.inc text eol=lf
Makefile text eol=lf
Makefile.* text eol=lf
*.mk text eol=lf

17
ground/.gitattributes vendored Normal file
View File

@ -0,0 +1,17 @@
#
# Ground source code files should always have CRLF line endings by agreement
# http://wiki.openpilot.org/display/Doc/Coding+Style
#
*.c text eol=crlf
*.cpp text eol=crlf
*.h text eol=crlf
*.hpp text eol=crlf
*.ui text eol=crlf
*.qrc text eol=crlf
*.qml text eol=crlf
*.pluginspec text eol=crlf
*.pri text eol=crlf
*.pro text eol=crlf

10
make/.gitattributes vendored Normal file
View File

@ -0,0 +1,10 @@
#
# All make includes should have LF line endings to be consistent with flight code
#
*.mk text eol=lf
*.py text eol=lf
/templates/firmwareinfotemplate.c text eol=lf
/templates/gcs_version_info_template.h text eol=crlf
/templates/*.txt text eol=crlf

6
matlab/.gitattributes vendored Normal file
View File

@ -0,0 +1,6 @@
#
# Matlab files have LF line endings
#
*.m text eol=lf
*.mdl text eol=lf

5
package/.gitattributes vendored Normal file
View File

@ -0,0 +1,5 @@
#
# Only Makefiles will have LF line endings
#
/*.mk text eol=lf

5
shared/.gitattributes vendored Normal file
View File

@ -0,0 +1,5 @@
#
# Shared UAVObject definisiton should have LF line endings
#
/uavobjectdefinition/*.xml text eol=lf