We have multi-platform project, which generates binaries for few platforms say mac, windows, linux... Is it possible to force git to change encoding of all files to some particular platform (For example: Linux). So how to change file's line ending every time when users commit or push to remote repository?
Asked
Active
Viewed 6,665 times
3
-
Why would you ever want to change the encoding of a binary? Encoding is not applicable to binaries, only to text files. – Daniel Hilgarth Feb 08 '13 at 11:23
-
Not for binary but we have configuration files...for which i want to force – twid Feb 08 '13 at 11:26
-
For us, binary will never be in git repository. – twid Feb 08 '13 at 11:27
-
Are you talking about line endings or encoding (like UTF-8)? – Daniel Hilgarth Feb 08 '13 at 11:46
-
Have you had a look at the setting `core.autocrlf`? – Daniel Hilgarth Feb 08 '13 at 11:49
-
can we add it to remote repository, So anybody clone, and while committing all get converted. – twid Feb 08 '13 at 12:00
2 Answers
4
I guess you should use a git hook
, check this scripts: Git companion scripts by yaegashi.

Atropo
- 12,231
- 6
- 49
- 62
2
I would recommend setting core.eol
directives in .gitattributes
file, rather than relying on a global config like core.autocrlf
.
core.eol
Sets the line ending type to use in the working directory for files that have the text property set.
Alternatives arelf
,crlf
andnative
, which uses the platform's native line ending.
The default value is native.
See gitattributes(5) for more information on end-of-line conversion.

VonC
- 1,262,500
- 529
- 4,410
- 5,250