On this page:
- Enabling smart handling of LF and CRLF line separators
- To enable smart handling of LF and CRLF line separators
- Handling the problems with line separators during commit
- To handle problems with the line separators during commit
Quite often people working in a team and using the same repository or upstream prefer different operating systems. This may result in problems with line endings, becauseUnix,Linux, and OS X use LF and Windows uses CRLF to denote the end of a line. PhpStorm shows the discrepancies in line endings in theDifference Viewer Dialog, so you can fix them manually.
To have Git solve such problems automatically, you need to set the core.autocrlf attribute to true on Windows and to input on Linux and OS X. For more details on the meaning of the core.autocrlf attribute, see the article Mind the End of Your Line orDealing with Line Endings. You can change the configuration manually by running git config --global core.autocrlf true on Windows or git config --global core.autocrlf input on Linux and OS X. However, PhpStorm can analyze your configuration, warn you if you are about to commit CRLF into the repository, and offer to set the core.autocrlf setting to true or input depending on the operating system used.
Enabling smart handling of lf and crlf line separators
To enable smart handling of LF and CRLF line separators
Handling the problems with line separators during commit
- Enable smart handling of LF and CRLF line separators. After that, PhpStorm will show the Line Separators Warning Dialog every time you attempt to commit a file with CRLF separators, unless you have set any related git attributes on the affected file. In the latter case, PhpStorm supposes that you clearly understand what you are doing and excludes the file from analysis.
- When the Line Separators Warning Dialog
is displayed, do one of the following:
- To ignore the warning and commit the file with CRLF separators, click the Commit As Is button.
- To have the core.autocrlf attribute set to true or input depending on the operating system used before commit, click the Fix and Commit button. As a result, all the CRLF separators will be replaced with LF separators and committed into the repository. Note that the reverse operation will not be performed when you download the files into your working directory, that is, no CRLF will appear in place of LF.
- To stop the commit procedure, clickCancel.
- To suppress showing the dialog box in the future, select the Don's warn again check box.