Skip to content

Upload/Download Conflicts #396

Description

@fgallardograzio

Issuehunt badges

First of all: Thank you! You've developed a really awesome, must-have tool!

Now, straight to my problem.
I want to keep settings synced between 2 PCs, but I'm always getting "conflicts" when downloading because the extension thinks my local settings have diverged from the gist (when IMO that's not the case, of course).

I keep getting errors like this:

Failed to save 'settings.json': The content on disk is newer. Click on Compare to compare your version with the one on disk.

Or even like this:

Failed to save 'syncSummary.txt': The content on disk is newer. Click on Compare to compare your version with the one on disk.

No matter what I change I always get those conflicts, even if it's just one line in settings.json (although that means at least two/three, since we have the ever changing "sync.lastUpload" and/or "sync.lastDownload" in that file).

For example, I follow this steps:

PC1:
  Sync: Download

PC2:
  Sync: Download

Now both PCs should be in sync.

PC1:
  Change one line in `settings.json`.
  Sync: Upload

PC2:
  Sync: Download
  ** Conflict **

When doing the initial sync, I've tried having forceDownload both set to false, and set to true, doing the whole flow every time. Same result.

If this is something you've never experienced or heard of, I'd be willing to try with fresh installs and share the full sync history along with each change I've made and command I've run.

However!

I think version control is way out of the scope of this extension.
Perhaps there's a fundamental problem with the following suggestion that I'm not seeing, but IMHO this extension should only care about gathering config files and pulling/pushing them to the provided gist.
Every gist is a git repository, so we've got every version control feature we need right there, we just need to leverage git's features.

There's no need for the extension to reinvent version control with the gist's cloudSetting's lastUpload timestamp, comparing that with all of the local settings' lastUpload and lastDownload values and whatever.
No need to manually implement safe/force download and safe/force upload (Issue #350). Git already does all of that, and it does it well.

I'd love to further discuss this and help code it if you want.

Thanks!


Visual Studio Code Version : 1.16.1
Code Settings Sync Version : 2.8.3
Operating System : Linx Mint 18
Occurs On: Upload and Download
Proxy Enabled: No


IssueHunt Summary

Backers (Total: $80.00)

Submitted pull Requests


Become a backer now!

Or submit a pull request to get the deposits!

Tips

Metadata

Metadata

Assignees

No one assigned

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions