add a todo item
This commit is contained in:
parent
6464a576cd
commit
49a95f151c
1 changed files with 42 additions and 0 deletions
42
doc/todo/automatic_bookkeeping_watch_command.mdwn
Normal file
42
doc/todo/automatic_bookkeeping_watch_command.mdwn
Normal file
|
@ -0,0 +1,42 @@
|
||||||
|
A "git annex watch" command would help make git-annex usable by users who
|
||||||
|
don't know how to use git, or don't want to bother typing the git commands.
|
||||||
|
It would run, in the background, watching via inotify for changes, and
|
||||||
|
automatically annexing new files, etc.
|
||||||
|
|
||||||
|
The blue sky goal would be something automated like dropbox, except fully
|
||||||
|
distributed. All files put into the repository would propigate out
|
||||||
|
to all the other clones of it, as network links allow. Note that while
|
||||||
|
dropbox allows modifying files, git-annex freezes them upon creation,
|
||||||
|
so this would not be 100% equivilant to dropbox. --[[Joey]]
|
||||||
|
|
||||||
|
----
|
||||||
|
|
||||||
|
There is a `watch` branch in git that adds such a command, although currently
|
||||||
|
it only handles adding new files, and nothing else. To make this really
|
||||||
|
useful, it needs to:
|
||||||
|
|
||||||
|
- notice deleted files and stage the deletion
|
||||||
|
(tricky; there's a race with add..)
|
||||||
|
- notice renamed files, auto-fix the symlink, and stage the new file location
|
||||||
|
- periodically auto-commit staged changes
|
||||||
|
- honor .gitignore, not adding files it excludes
|
||||||
|
|
||||||
|
Also nice to have would be:
|
||||||
|
|
||||||
|
- Somehow sync remotes, possibly using a push sync like dvcs-autosync
|
||||||
|
does, so they are immediately updated.
|
||||||
|
- Somehow get content that is unavilable. This is problimatic with inotify,
|
||||||
|
since we only get an event once the user has tried (and failed) to read
|
||||||
|
from the file. Perhaps instead, automatically copy content that is added
|
||||||
|
out to remotes, with the goal of all repos eventually getting a copy,
|
||||||
|
if df allows.
|
||||||
|
- Drop files that have not been used lately, or meet some other criteria
|
||||||
|
(as long as there's a copy elsewhere).
|
||||||
|
- Perhaps automatically dropunused files that have been deleted,
|
||||||
|
although I cannot see a way to do that, since by the time the inotify
|
||||||
|
deletion event arrives, the file is deleted, and we cannot see what
|
||||||
|
its symlink pointed to! Alternatievely, perhaps automatically
|
||||||
|
do an expensive unused/dropunused cleanup process.
|
||||||
|
- Support OSes other than Linux; it only uses inotify currently.
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue