When I first got into KiCad, I tried to “save as” and was flummoxed by the fact that this was not supported. As a general modus operandi I like to include a date and revision letter in all of my data files; not only for circuit designs but also for spreadsheets, Word documents, etc. everything else. Especially when collaborating and e-mailing files, having multiple different files with the same name seems to be the quickest shortcut to confusion.
Upon discovering the lack of “save as” I tried to figure out GIT, but saw that I might spend more time trying to understand GIT than working with KiCad, so quit that. I resorted to putting copies of my sch and pcb files into zip files with dates in the filenames. This seems to work but I do not particularly like it because the pcb and schematic file names are still all the same.
Now…as recommended I have my KiCad install files in a folder and subfolders of the Windows program files. Aside from that, I have a personal data folder which contains my symbol and footprint libraries. And I have another personal data folder which contains the .pro, .sch, .pcb, netlists etc.
1-2 days ago, I wanted to make some schematic changes. I decided to try copying the entire project folder with the .pro, .sch, .pcb, netlists etc. to another one with an updated name. In this new folder I deleted the old backup and netlist files, and I renamed the .sch, .pro, and .pcb files so they agreed with the name of the new folder.
After this, my first step is to make some schematic edits. Of course my old pcb agrees with the old schematic, and the new one is planned to agree with the new. At least working on the schematic, so far, this has worked painlessly. It took me about a minute to rename a few files. My process of backing up would be a little easier; if I make a zip of the new folder it should assume the same name and that seems good.
So my question is…am I headed to a minor disaster in what I am doing?
This is the dangerous part. For backups i suggest to only have the folder with different names but keep the inside untouched. (I typically have the folder named project_name__version and the files inside only project_name. Makes creating different versions a lot easier)
If you however want to rename these files then make absolutely sure you do not forget to also rename the cache library! (This special file must always have the same name as the project file plus -cache.lib.)
If there is a rescue lib then you have a choice. Rename it and fix all references to it in the library table and in the schematic files or keep it at its old name.
In recent weeks I have received warnings about rescue or cache libraries, but no other related problems… I did not know what this meant. I am reading some of your remarks elsewhere on the subject of the cache library.
I am looking at the content of my new folder. I THINK that I deleted the cache library from the new folder but KiCad appears to have created a new one with the new filename. Is this OK if I have not changed any of the symbols or footprints which I was already using? I have made at least one new one; but I would think that is not an issue.
TlDr answer: Think of the cache lib as part of the schematic files. (Compare it to the file header of the pcb file. It contains the symbol info of all symbols used in the schematic.) KiCad will simply not find it if its name is different then the project name. (This is why you will need to rename that one as well.)
The rescue lib is a bit different. It is the mechanism to keep your project unchanged in cases where your libraries change. It really does not need to be renamed but it is tempting to do so. (If you however rename then you need to update the references to it.)
If kicad detects there is a discrepancy between the symbol in the cache library and the libraries them selves then you will get a dialog that asks if you want to rescue or if you want to take the new symbol from the library. Should you choose the rescue path then the symbol is copied from the cache library into the rescue lib and all references in the schematic are updated to point to the rescued symbol.