Not really sure what happened. The build pipeline for the Lifeboat helper app automatically launches the Desktop project. Was just working on the helper, made a new build, and the build pipeline alerted me that Lifeboat.xojo_project did not exist. I go to check my filesystem and the whole Lifeboat folder was empty.
I suspect something to do with having both projects open. My license did not magically deactivate (as happens sometimes, forcing save as binary).
Thankfully I’ve only lost a few minutes of work, but holy cow I thought it worth reminding people to use source control because I know many of you do not.
tl;dr - Just minutes ago source control / git saved my behind.
Not saying that it is related, but I’ve heard histories like that due to Apple synchronizing iCloud in some mad way, and the cloud decided that a file did not exist and synchronized a “delete” to the original folder.
Today, Git saved my day again. I had to repeatedly jump back and forth between a two-month-old version of my source code and the current version to find a bug, across different Xojo versions and plugin versions.
Checking out different commits made this easy, without having to manage additional copies of my source code in new folders…
Check out version X, test with Xojo version Y, check out version X, test with Xojo and plugins in version Y, etc.
While we are chatting about backups and source comparison, let me just mention Arbed from TT, which I use for comparisons and other work, and find invaluable.
Thanks for reminding everyone, Tim!
I’ve also been saved many times.
Git is peace of mind. Working without Git is a trapeze without a safety net.
If there are 2 devs on a project, then it’s mandatory. We shouldn’t skip it when we are working on our own.
Just seeing the code changes you made yesterday or last week, or 5 minutes ago is indispensable.
It’s not just for code, you can use Git for versioning images, documentation, notes, etc.
It is also great for finding changes you’ve accidentally made to a UI.
When something goes wrong, Git’s there to immediately get you back working, instead of the stress of scrambling to look for backups or old copies.
Two+ devs in the same project in Xojo seems a nightmare to me.
Xojo seems prone to break things merging contents, specially due to the many Xojo internals only as #tags#flags etc that only the IDE knows what they are, so it needs someone coordinating what can be touched and what can’t at one time (like separate modules) to avoid the clashes like a cryptic code changing and you don’t knowing which values to choose for the conflicting line.
The good part is that using a VCS you can revert the mess, research the corrections, and try again.