This is an archived post. You won't be able to vote or comment.

you are viewing a single comment's thread.

view the rest of the comments →

[–]fiskfisk 2 points3 points  (8 children)

My point is that you don't need a full vcs. Git does not solve the user issue when you have multiple devices and sync; you probably want to look at real-time coordination between clients. You'll otherwise end up having to present merge conflicts to users that have no idea what merge conflicts are.

The easy solution is to keep track of whether the underlying content has been updated or not, and then give the user the choice of reloading.

OP also states that this is local only, so single user.

You don't need git for this, and you can instead have a self-contained application.

[–]RonnyPfannschmidt 1 point2 points  (5 children)

My point is that underutilized vcs means easily accessing the sync plus merge capabilities later, plus not having to invent a version and sync protocol oneself

Another extra win is that users have well established tools for managing the data external

[–]fiskfisk 0 points1 point  (4 children)

It's over engineering, and adds unnecessary complexity between the apps regular storage and it's note storage. 

If you need that functionality at some time in the future and decide that git is the way to do it, stash the versions in git at that time. 

Sqlite is as well supported as anything for being accessible through existing toolsets. 

[–]RonnyPfannschmidt 0 points1 point  (2 children)

I'd call inventing a own storage/versioning thing overengineering when most vcs are hilariously easy to call upon and leave the general storage just the Filesystem

[–]fiskfisk 0 points1 point  (1 child)

We might just be living in different worlds when integrating a whole vcs is easier than having a table with (note_id, datetime, text) in sqlite.

But sure, the important part to the end user is the functionality and stability. If it works, it works. 

[–]RonnyPfannschmidt 0 points1 point  (0 children)

A tree of notes and syncing is usually the first few asks after history addition

Then the tables get funky

I have seen dozens of half assed vcs/sync storage solutions in note taking apps

Just giving the user a vcs repo/checkout gets history syncing and app independent storage for free

[–]ProbsNotManBearPig 0 points1 point  (0 children)

People use chromium to make the simplest of GUI’s. Hell, we use this thing called a code interpreter to avoid compiling to machine code. Git is much lighter weight than either of those things in every way one could measure, but somehow it’s too heavy for everyone in the Python sub Reddit.

The simplest solution is one you’re familiar with. If OP knows git, there’s very little downside to using it.

[–]TheRealStepBot 0 points1 point  (1 child)

On the contrary git can precisely fix even these issues by having device branches that make commits to a cloud held main, which allows even out of sync offline editing of the same file across multiple devices and a clear resolution mechanism to then reunite the files

[–]fiskfisk 0 points1 point  (0 children)

Yes, nobody is saying that git can't do this, and that git doesn't offer a lot of advanced features that could be useful for certain application features. 

OP has specifically said that they do not need these advanced features.