Repositories By default your workspaces are synced in full, but there will be cases when you might want to:
  • pause temporarily the syncing of your workspace.
  • just sync a subset of your workspaces.
Pause workspace sync You can temporarily pause syncing for any workspace through the desktop app: Go to Settings Diversion's Desktop App Settings Button Pause sync Diversion's Desktop App Pause Sync Confirm to pause syncing for the current workspace Diversion's Desktop App Confirm Pause Sync While paused: Your local changes are preserved and you can continue working Remote commits from other team members won’t sync to your workspace Your commits won’t be pushed to the repository This is useful when you need to work offline or want to prevent interruptions during intensive work sessions. Remember to resume syncing when you’re ready to collaborate again. Selective sync Control exactly which folders sync to your local workspace through Settings. Diversion's Desktop App Settings Button Selective sync Diversion's Desktop App Selective Sync Check (for sync) or uncheck (for unsync) the desired directories Diversion's Desktop App Confirm Selective Sync How it works: Checked folders: Contents sync locally, including all subfolders Unchecked folders: Won’t sync locally Partially checked folders: Only checked subfolders will sync Previously synced folders: Will be deleted locally if unchecked Important notes: Selective sync settings apply only to the current workspace Settings cannot be changed while you have pending changes—commit or stash first Each workspace can have different selective sync configurations This feature is particularly useful for large repositories where you only need specific assets or code sections for your current task. Sync Conflict Detection We’ve introduced a new mechanism to help you manage sync conflicts more smoothly. If your workspace was paused or out of sync while others made commits to the same branch—and you edited the same file without syncing—your version of the file will now be automatically backed up locally with a .dv-conflict suffix. This helps ensure you don’t lose your changes and keeps your workflow efficient. The .dv-conflict Files These files are only created to indicate conflicts and are not intended to be committed to the repository. Hence, they are not tracked by Diversion and you can’t commit them. They will show up in your workspace in the Diversion desktop app with a warning, and you will be able to view their contents, but with no history. You can continue working and committing as usual with the rest of your files, including the original file that was conflicted. However, we recommend resolving conflicts as soon as possible before the differences become too hard to merge. The .dv-conflict files are not automatically deleted, so you should delete them yourself once you resolve the conflicts. It is currently not possible to delete them through the Diversion desktop app, but you can do so manually from your file explorer. Use the context menu item Show in Explorer/Finder to quickly locate the file and delete it. Resolving Sync Conflicts If this is an Unreal Engine resource, such as uasset, then it’ll be impossible to open both versions inside the editor due to broken redirectors in the backed up file (because its name has changed). Please do the following:
  1. Make sure the original file has no changes (if there are, either commit or reset them before dealing with conflicts).
  2. Overwrite the original file with the .dv-conflict version.
  3. After the file is overwritten, you can open it in the editor and review the differences between the two versions.
  4. Once you have resolved the differences, you can commit the changes or reset if you don’t want them.
  5. Delete the .dv-conflict file (if you left a copy when overwriting) to clean up your workspace.
For other file types, such as text files or images, the process is as follows:
  1. Use your preferred local diff tool to compare the versions, such as Meld, WinMerge, VSCode, etc. or open the files side by side.
  2. Apply your edits to the original file path, and commit once you’re ready.
  3. Delete the .dv-conflict file to clean up your workspace.
If you don’t clean up the .dv-conflict file, it will remain in your workspace, which may accumulate several conflict backups, e.g. file.dv-conflict.txt, file.dv-conflict-1.txt, file.dv-conflict-2.txt, etc.