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,crlfandnative, 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