Cyberduck 9 adds a new custom file versioning feature for protocols with no native versioning support, such as FTP/SFTP and WebDAV.
The feature is added as a security measure to reduce the risk of file loss when editing changes. You can enable the option by default in the Editor tab in Preferences.

The versions can be previewed, deleted or restored in Edit →
Info →
Versions with the same user interface as when working with revisions from protocols with native versioning support such as a versioned bucket in S3.
Technically instead of overwriting files, previous versions are moved to a folder named .duckversions
created adjacent to the edited file. The documentation has more details.