The answer to this would depend on what you are using for Source Control. I will try to answer assuming Git is your source control.
Short Answer: Not easily...
The short answer is, with regular Visual Studio and Git as the source, there is no easy way to do this. Sure, you could add VS projects to include the .yml
files and do it that way, but that will just clutter up and slow down Visual Studio. There is no point.
Update: There is a way...
Ok - so there is a way, but it may/may not have performance impacts on VS/your builds etc...
Create a new .csproj
file and store it in your serialization
folder. I called mine Feature.FeatureName.Serialization
Open the .csproj
file in notepad/vs code/vim - whatever text editor you use :) and add the following lines:
<ItemGroup>
<None Include="**\*.yml" />
</ItemGroup>
This will make all the folders and .yml
files visible in the project, you can right click and view the history etc... and with them set to None
as the build action, it will not copy them.
You will however get a new binary in your bin folder with nothing in... So there is that... I still would just follow the solution below:
Longer Answer: Just don't Use Visual Studio
If you take the requirement to use Visual Studio out of the question, this is a relatively easy task. Depending on your Git client of choice, you just find the files you want and view the history of them. The easiest way to do this is just in Windows File Explorer with GitExtensions. You can simply right click the file and view the history.
If you want something that feels more familiar to Visual Studio users, use Visual Studio Code. Just open the source folder with VS Code and you can view all the files there, it has an excellent Git History plugin that you can install:

Once that is installed, find your file, right click and view the history. See the details about the plugin here: https://github.com/DonJayamanne/gitHistoryVSCode
One of the advantages of Unicorn for me was the removal of all the serialized items from Visual Studio, I would often find that when a TDS project got very large and had lots of items, it would impact on Visual Studio performance. Ultimately, these files are not code and I rarely need to open them up to look at them, I just want to see changes when I make commits. Keeping them out of VS means they don't get in my way.