Configure Visual Studio to use UNIX line endings
Solution 1
Warning: This solution no longer works for Visual Studio 2017 and later. Instead, both of the answers by jcox
and Munther Jaber
are needed. I have combined them into one answer.
As OP states "File > Advanced Save Options", select Unix Line Endings.
This will only affect new files that are created. Fixing any that were previously created can be done file-by-file or you can search for tools that will fix on-bulk.
Solution 2
Here are some options available for Visual Studio Community 2017
- "File > Advanced Save Options" has been removed by microsoft due to "uncommon use". Whatever that means. https://developercommunity.visualstudio.com/content/problem/8290/file-advanced-save-options-option-is-missed.html You can add it back by going to "Tools>Customize", then "Commands" tab, select the drop down next to "Menu Bar" select "File" then "Add Command">File>Advanced Save Options..". You can then reorder it in the file menu by using "move down".
I don't know if you will have to then set the advanced save options for each and every file, but it might prevent the issue I was having where my Visual Studio kept adding CL RF line endings into my files that were uniformly LF.
But I took it one step further and I added an extension called "Line Endings Unifier" by going to "Tools>Extensions and Updates>Online" and then searching for "line endings" in the search bar to the right. I will use this to automatically force all of my scripts to save with uniform line endings of my choice, but you can do more with it. https://marketplace.visualstudio.com/items?itemName=JakubBielawa.LineEndingsUnifier
strip'em is another solution that does something similar to Line Endings Unifier. http://www.grebulon.com/software/stripem.php
I am not sure how they differ or the advantages/disadvantages of either. I'm mainly using Line Endings Unifier just because it was in the Visual Studio Marketplace. I think I've used all of these methods in the past, but my memory is fuzzy.
Solution 3
So I found this problem and the answers very confusing, especially since I primarily develop in Linux and PhpStorm and simply never have these issues.
I found that for Visual Studio 2019, only Munther Jaber's solution worked when combined with @jcox's .editorconfig
changes for new files.
However, being unfamiliar with Visual Studio itself, it took me a LONG TIME to find out where the line ending box is...
SO I made a video of how to configure this. https://youtu.be/YfN3igHXTPo
Update: I learned how to make animated GIFs via FFMPEG just so I could embed the video here!
Solution 4
VS2017 supports .editorconfig files, which can be checked in along with your project. This is the relevant command for setting Unix line endings:
end_of_line = lf
Solution 5
"File > Advanced Save Options", select Unix Line Endings works per file based.
Alternatively You can use Strip'em Add-in for Visual Studio
This Add-in converts the text format of a file when it is saved in Visual Studio.
More info here: http://www.grebulon.com/software/stripem.php

moala
Updated on July 08, 2022Comments
-
moala 5 months
We would like to use Visual Studio 2005 to work on a local copy of an SVN repository. This local copy has been checked out by Mac OS X (and updates and commits will only be made under Mac OS X, so no problem there), and as a consequence the line endings are UNIX-style.
We fear that Visual Studio will introduce Windows-style line endings. Is it possible to force Visual Studio to use UNIX line endings?
-
xiao 啸 over 9 yearsFile > Advanced Save Options is not found on VS2010 express, any alternatives?
-
Albert over 8 yearsThat seems to change it only for the currently opened file, right?
-
Zero over 8 yearsIt will change the default for newly created files. It will not modify already created files that have consistent line endings. By default Visual Studio will warn you when you open a file that has mixed line endings and prompt you to chose a consistent line ending.
-
GibboK over 7 years@xiao啸 try to set you environment to general msdn.microsoft.com/en-us/library/dd409797.aspx
-
Trevor about 7 yearsMore valuable to me than the answers that refer to
Advanced Save Options
, though I decided to go with a different extension (Line Endings Unifier). -
Kildareflare almost 7 yearsNote if you cannot see this option you need to import environment settings (Tools - > Import and Export Settings) C# settings worked for me.
-
CoffeDeveloper about 6 yearsThis is not a scalable approach, one does not simply "Advanced Save Options" 300 source files every day. It surprise me MS designed Visual Studio that way.
-
Zero over 5 years@GameDeveloper as per my previous comment changing the setting will apply for all new files created within Visual Studio. To bulk change existing files a different tool is needed - many VCS have automated scripts to check or modify source files on check in.
-
Olivier Pons about 5 years@GameDeveloper I'm not surprised at all. MS has not even the classical gutter (80 chars) for development, you have to install your own plugin, not CTRL-click to show all usages of something, saving in a special encoding is a non-sense from a normal human point of view, and I have many non-sense thing like that for MS. It's totally counter-productive. I have to use this "editor" for Unity, and after using PyCharm and PhpStorm, I feel like I go back to prehistoric age.
-
Sudsy over 4 yearsAs of July 2018 there is another option - Choose File -> Save As then on the save dialog the save button has a dropdown for save with encoding. You can set the line endings there.
-
FragmentalStew over 4 years@Sudsy I tested this, and confirms that it does work in visual studio community 2017 version 15.7.4 According to Zero, when using advanced save options, "changing the setting will apply for all new files created within Visual Studio". I wonder if this is true for this method as well.
-
jcox about 4 yearsPretty sure that visual studio code, not visual studio.
-
David DiGioia almost 3 yearsFor those using VS 2019 (I'm unsure about older versions) there is an option just like this in the bottom right of the text editor, which is easier imo than using "advanced save options."
-
Zero over 2 years@CoffeDeveloper This refers to configuring the way new files are created - so it only needs to be done once, not once per file or once per day.
-
Theodore R. Smith over 2 yearsThis answer is completely out of date. I've been a member of StackOverflow for 10 years and I'm not sure what we should do. Downvoting the answer doesn't seem ... right .. because it removes karma for a once-valid answer.
-
Theodore R. Smith over 2 yearsThis only works for new files for me. I included it in my answer, tho. stackoverflow.com/questions/3802406/…
-
Theodore R. Smith over 2 yearsHere's a video for everyone who was as confused as me: stackoverflow.com/questions/3802406/…
-
Oneiros about 2 yearsI cannot see the bottom right buttons in that bar, how do you activate those?
-
Theodore R. Smith over 1 yearMake sure you are using Visual Studio and NOT Visual Studio Code. That's a major point of confusion in both questions and answers...
-
Charles Burns 12 monthsThank you for LineEndingsUnifier. Would you be so kind as to update it for VS2022?
-
paretech 11 monthsIf you do not see the "Advanced Save Option" and you are running VS 2017, 2019 or 2022, then checkout the note at the bottom of this MS help page. docs.microsoft.com/en-us/visualstudio/ide/…
-
KevinVictor 10 monthsNote- working on a Unity project... I found my .editorconfig in the Assets folder