not a question, just advice on public variables

public variables are great for when you are tweaking and easier, at times, then typing in GameObject.find etc etc. but the downside to not having them hard wired into the code is that you can loose them. I had a script whose name didn’t match the class name so unity didn’t load it, nor a few other scripts that referenced it. even after repairing the typo suddenly ALL - I mean EVERY SINGLE public variable was lost!. I mean dozens of scripts with as many as a dozen variables each. I spent two days reading every script trying to find out what I was suppose to drag into that slot. And while I was at it , I hard coded much of what I could93582-gone.jpg

what is version control?