Data lost when copying config from one workspace to another

This post was last updated for 301 days ago, and the information may already be changed

Hi,

I have two workspaces in SiYuan. I wanted to copy all the config from one workspace to another. I copied the "conf" folder from the first workspace folder to the second.

However, in the second workspace, all the notebooks from the first one appeared. I deleted them manually. Then, when checking the first workspace, all the notebooks were gone from it as well.

There was some important data in those notebooks, and I have no idea how to restore them. I assumed the workspace folders are completely independent one from another, so why does something so simple as copying all the config also copy all the data, and synchronizes that data between the folders?

    Welcome to here!

    Here we can learn from each other how to use SiYuan, give feedback and suggestions, and build SiYuan together.

    Signup About
    Please input reply content ...
    • zxhd86 1

      You can first disable synchronization, manually roll back the snapshot and then change the sync mode to "Full manual sync". Click on Sync in your settings menu again but this time choose "Upload local data snapshot" as a direction for synchronizing.

      After that, change back to automatic syncing.

    • MiscReply
    • 88250

      The configuration file contains cloud sync directory information, so if two workspaces use the same configuration file, they are equivalent to being connected to the same cloud directory, so they will affect each other through data synchronization.

      1 Reply
    • akmtk
      VIP Warrior Author

      Are there any plans then to make it possible to copy the config (as in, the settings you set from the user interface, e.g. use Adaptive Width) from one workspace to another?

      I'd like to isolate personal files from work files, but I would like to share the settings between the two workspaces. Ideally, it would be good to have the settings configurable per-app, not per-workspace.

      Edit: just splitting the user-facing config and system config in two separate files, and documenting it somewhere, would already be a great solution!

      1 Reply
    • akmtk
      VIP Warrior Author

      In the end, I had to manually remove the cloud folder I used for sync, create it again, and then sync the snapshot data back to that folder.

      The problems are:

      1. When creating a new workspace, all your settings from the previous workspace are not getting copied there. So you don't want to re-configure them manually, so you copy the config folder from one workspace to another, at the assumption that it only contains config. But in reality, the data is also transferred.
      2. When working with data history, when rolling-back to a previous snapshot, there is no way to tell the cloud that this, in fact, is the most recent, correct data state, and prevent it from overwriting the data on sync.

      There is even a message popping up when rolling-back:

      Screenshot20240206at10.07.261.png

      I would very much like to have an option to overwrite the cloud instead of disabling the cloud entirely. I mean, what's the point of rollback if you can't stay on it?

      Edit:

      Screenshot20240206at10.43.44.png

      I believe these settings in /conf/conf.json contributed to the problem. I assumed the workspace folders are self-contained, that is, all the references are relative and under no circumstances one workspace can be affected by what I do with another workspace. I had a mental model of an ordinary file being open by a program to edit. E.g. if I edit a Word file with MS Word, I do not expect anything else but that file to be affected by my edits.

      2 Operate
      akmtk updated this reply at 2024-02-06 17:50:56
      akmtk updated this reply at 2024-02-06 17:40:45
    • Visit all replies