-
Notifications
You must be signed in to change notification settings - Fork 233
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Sync Improvement - merge snippets instead of overwrite #57
Comments
+1 |
@brpaz I'm sorry for the too late reply! I changed the behavior of In addition, |
The sync feature is great, but I think there is still an issue with auto_sync that happened to me today. Let's say I have auto_sync on both machines A and B. I add a snippet on machine A and it syncs the gist. Now I add a snippet on machine B. It will add the snippet, making the local file newer, then upload, and overwrite the snippet added by machine A. In my opinion, it makes more sense to do this when running
|
You mean as in merge the changes? |
@RamiAwar A merge is one option but not necessary. I just mean it would be great if it didn't overwrite previously added commands from some other machine when I forget to pet sync before pet new. To achieve that it might be simpler to download (if remote is newer), add the command locally, then upload, no? With the same gist configured you can then add commands from any machine without touching pet sync with auto sync turned on, and none of them get lost. I guess a question would be what would happen with pet edit. Would it also download first, then let you modify it, and then upload? Possibly, which to me sounds better than losing commands. If someone does not want this they can just disable auto sync or sync to different gists on different machines. |
@patrik-bartak sorry missed this. Let me see if I understand correctly. So you're saying:
For 'merging' changes i.e. if you already have a local file, you're saying we compare modified at as well. (local file system modification vs sync client last update date)
|
@RamiAwar Yes that is what I had in mind. Do you agree this streamlines the use of pet, even if it is more complicated to implement? I imagine this will be useful for those that regularly switch computers. |
Yess I think it's definitely worth doing, makes sense! |
The logic itself seems quite simple. Can I have a go at it or do you have time? |
Yess please do! 🙂 Don't have much time these days 😄 |
I'm on it. Can I link this issue or make a new one? I think this issue should have already been resolved. |
@patrik-bartak You can just use this issue! We can add more details in the PR description 🙂 Thanks! |
Hi.
First of all, congratulations for building this tool I am using it everyday.
I added lots of snippets in the last days, and today I decided to run
pet sync
in order to synchronize to my snippets gist. But I didn´t specify the -u flag, so it downloaded the contents of the gist file and replaced all my newly created snippets! fortunately I had a backup. I was not aware of this behavior. I think sync should merge the contents of local and remote files and not replacing them like this. The current behavior is more of a backup, than a sync really. It I have pet running of two machines and add snippets In both of then, there is no way to sync automatically without losing data.Hope this can be improved.
Keep up the good work!
The text was updated successfully, but these errors were encountered: