8 years, 10 months ago.

Nobody cares that mbed deletes contents of projects?

I placed a question yesterday. No response or any action. If so - I repeat. Files in on of my projects were erased while doing upgrade of libraries (mbed-src, mbed-rtos). Just everything disappeared (not only those libraries, just everything). Any cure known?

P.S. I know - backup everything. But there is an issue - I can not restore from packed up zip files.

Why can you not restore from a zip file ? I do it: a project begins with the online compiler, then continues within a offline compiler(zip file provided by the exporter). Sometimes I go back to the online compiler with a zip file and import this as a NEW project in the online compiler.

posted by Robert Spilleboudt 19 Jun 2015

1 Answer

8 years, 10 months ago.

That is because at least people in the community can do very little with your question, since it is not a question. Set back an older revision of your program, assuming you commit it once in a while. Without more detail we also can't know why you can restor from ZIP files.

But in general this is something I would send a mail to mbed support about.

Erik if I understand you correctly, if you 'Commit' your program it's actually safely backed up on the mbed side?

posted by Andrew R 20 Jun 2015

Well I do not know the actual backup strategy of mbed, however for sure it is alot safer and easier because they user can restore it. If you accidentally delete a file, you can then restore it yourself from the commit. If you modify something and it turns out to not work proprerly, you can put the old version back.

That said, if you are working on an important project for your company for example (or lets say your bachelor/master thesis), I still would advice you to also make your own backups and not rely completely on a third party with which you have no SLA.

posted by Erik - 20 Jun 2015

Andrew - The online compiler has a full version control system, 'Commit' will store the current version together with a comment. You can commit as often as you like. You can then at any time revert back to a previous version (any uncommitted changes will be lost) and then jump back to the current one.

A committed version is in theory in a read only storage from that point on and so nothing should touch it. Of course server data loss could still happen but it would be a far bigger issue if something like that happened rather than just the working version (which is by definition read/write) getting lost.

Commits remain purely in your compiler account. If you delete the project from the compiler it's still gone.

If you also hit publish you then create a project in your user account that is separate from the compiler. If you delete the project in the compiler you can import the project again. The published version has all the history of all the previous commits on that project.

That published version can be private to just you, public, or shared within only one or two people, it will ask you when you hit publish.

Also when you select publish for a second time it gives you the option to either update the current published version (other people using it and other projects within your account will be notified that there is a new version) or create a fork - a new version that has all of the history of the old one but from this point on will be independent.

Assuming your mbed account isn't deleted a published project should be safe against just about anything short of a fatal failure of the entire mbed.org system and their backup systems.

That said, if it's that important to you download a zip and store it somewhere that is read only and offline e.g. burn a CD of it. (although recordable CDs are only good for about 5-10 years so still not perfect...)

posted by Andy A 22 Jun 2015