local-history
v1.0.4
Published
Maintaining local history of files (history of your changes to the code files).
Downloads
2
Readme
Local History for Atom
Atom package for maintaining local history of files (history of your changes to the code files).
Why?
For maintaining a history of the files revisions like mostly code editors:
- "Local History" of Eclipse IDE
- The plugin "Local History" for SublimeText
- IntelliJ and other...
Especially, I need an automated backup of my work to save me from stupid accidents... :fist:
Benefits
- Local history of a file is maintained when you create or edit a file. Each time you save a file, a copy of the old contents is kept in the local history.
- It can help you out when you change or delete a file by accident.
- It saves your work when you forget to commit or push your code.
- The history can also help you out when your workspace has a catastrophic problem or if you get disk errors that corrupt your workspace files.
- Each file revision is stored in a separate file (with full path) inside the
.atom/local-history
directory of your home directory. e.g:/home/nicolas/.atom/local-history/var/www/my-great-project/lib/2014-06-21_17.05.43.utils.js
- Show diff and merge with your favorite diff tool.
Install
apm install local-history
Or Settings ➔ Packages ➔ Search for local-history
Usage
Show the history of the current file:
- From the context menu (right click)
- Or with the command
Then, select the revision to open in another tab
command
local-history:current-file
show local history of current file.local-history:difftool-current-file
Open the current file and a given revision file with your defined diff tool (see difftoolCommand).local-history:purge
purge the expired revisions (see daysLimit).
Settings
fileSizeLimit
File size limit, by default: 262144 (256 KB). The files heavier than the defined size will not be saved.
daysLimit
Days retention limit, by default: 30 days. The oldest files are deleted when purging (local-history:purge).
difftoolCommand
A custom command to open your favorite diff tool, by default: meld.
Example:
meld "{current-file}" "{revision-file}"
{current-file}
is the placeholder replaced automatically by the path of the current file.{revision-file}
is the placeholder replaced automatically by the path of the revision file selected.
The actual command generated will be something like this:
meld "/var/www/my-project/my-current-file.js" "/home/nicolas/.atom/local-history/var/www/my-project/2014-07-08_19.32.00.my-current-file.js"
TODO
- Automatic purge (triggered, max 1 per day).
Contributions are welcome.
LICENSE
Author
| | |---| | Nicolas Talle | | |