Joseph K. Myers

Tuesday, November 4, 2003

new

This has been sitting here, also, for a long time.

It is a version control tool for single files.

Maybe the coolest thing about "new" is the ability to do this:

% new index.html < index.html
Creating file (v.2): 1
Linking index.html: 1

This ordinarily would result in overwriting the file index.html, but with new it does not. It overcomes the reasons that make it impossible to use the easy way to copy a file into itself without new. You can then edit the file and make changes, with a fully preserved previous version.

In fact, a similar command should be done every time you wish to start a new version of a file.

A directory called versions is stored inside every directory where new is used.