longform icon indicating copy to clipboard operation
longform copied to clipboard

Help: how to work with versioning and drafts of scenes?

Open kerim opened this issue 1 year ago • 1 comments

Sorry to put this here, but I didn't see any place to just ask for help from the community.

I just came back to longform after a while and am wondering how the best way to work with scene level versioning is? I see you can do versioning of an entire project within the project menu, but don't see any similar controls for individual scenes. I imagine users have some kind of workarounds for this?

For instance, if I have a document:

Project X

  1. Section 1.1 sub-section 1.1.1 sub-sub-section

And I want to revise "1.1.1 sub-sub-section" but keep the current version for reference. So that I have "1.1.1 sub-sub-section (01)" and "1.1.1 sub-sub-section (02)" - how do people do that?

Right now it only seems possible to save the entire project and have "Project X (01)" and "Project X (02)", but not what I described above?

Thanks.

kerim avatar May 20 '24 00:05 kerim

I realized I'm probably overthinking it. A project folder of text files is pretty small. My current project is barely 50kb. Saving a new draft every time I want to update an individual scene feels like overkill, but in terms of today's storage it probably barely moves the needle. If I make a 100 drafts it will still be only around 5MB!

kerim avatar May 21 '24 06:05 kerim

Maybe a little bit late as a reply, but you could use the Git plugin. It's what programmers often use for versioning of code. Since both are often just text files, it works perfectly and it "basically", only stores the changes to files. It's not automatic though, as you need to commit the changes into the repository, which is better in this case.

That way, you would always have only the latest versions of files, but could look into what the file was like at any change that you made a commit to the git repository, regardless of what the change to the file is, even deleted files can be inspected, as long as they existed once in a commit.

It's local by default, but it allows for remote storage anywhere a git repository can be stored. It also allows for you to use any other 3rd party tool used for management of git repositories, in case you need more advanced features.

Igneom avatar Jun 09 '25 22:06 Igneom

Sorry for taking a literal year to respond, and thank you to @Igneom for jumping in.

Longform isn't really intended to cover this case, as it's kind a function of your entire setup. You could use git or Time Machine or anything else that does versions. My other tool, screen.garden, will be shipping versions soon :)

kevboh avatar Jun 13 '25 13:06 kevboh