timedfile
v1.5.4
Published
Timed File - versioning with files
Downloads
3
Readme
TimedFile
If you need a single file to be versioned, this wrapper for you.
Features
You can save
, rollback
, fastforward
, reset
and clean
save
to create a version on the timeline which you rollback, fastforward or reset to.rollback
to go back to a version which you have saved beforefastforward
to fast forward to a version during a rollbackreset
to remove all existing changes to the current version on the timeline (not always the latest)clean
to remove all existing versioning data (including commits and rollbacks), as good a new timedfile.diff
shows the content difference between modified text and current saved statediffs
shows a timeline of all the changes in diff format from npm-diff
Basic Usage
Examples of how to use the wrapper - Using Async/Await
For more usage examples, you can refer to the full documentation unit tests
To Save
const timedFile = new TimedFile({fileFullPath: 'PathToFile'});
Here is where you write something to the file
fs.appendFileSync(pathToFile, 'Some New Line');
- Saving
await timedFile.save(author);
To Rollback
const timedFile = new TimedFile({fileFullPath: 'PathToFile'});
Here is where you write and save to the file a few times.
fs.appendFileSync(pathToFile, 'Some Line');
await timedFile.save(author);
fs.appendFileSync(pathToFile, 'Some Line Again');
await timedFile.save(author);
- Rollback
await timedFile.rollback();
It rollbacks to a version without the last entry of Some Line Again
To FastForward
Continuing from the Rollback scenario
- Fastforward
await timedFile.fastforward();
It rollbacks to a version with the last entry of Some Line Again
To Reset
Regardless of the contents in the file,
- Reset
await timedFile.reset();
- Clean
await timedFile.clean();
To Diff
- Diff
await timedFile.diff();
- Diffs
await timedFile.diffs();