Joey Hess
ded2591124
unannex: Clean up use of git commit -a.
...
This was more complex than would be expected. unannex has to use git commit -a
since it's removing files from git; git commit filelist won't do.
Allow commands to be added to the Git queue that have no associated files,
and run such commands once.
2011-07-14 17:15:37 -04:00
Joey Hess
9f1577f746
remove unused backend machinery
...
The only remaining vestiage of backends is different types of keys. These
are still called "backends", mostly to avoid needing to change user interface
and configuration. But everything to do with storing keys in different
backends was gone; instead different types of remotes are used.
In the refactoring, lots of code was moved out of odd corners like
Backend.File, to closer to where it's used, like Command.Drop and
Command.Fsck. Quite a lot of dead code was removed. Several data structures
became simpler, which may result in better runtime efficiency. There should
be no user-visible changes.
2011-07-05 19:57:46 -04:00
Joey Hess
22a4f5b348
unannex: In --fast mode, file content is left in the annex, and a hard link made to it.
2011-07-04 16:06:28 -04:00
Joey Hess
cdbcd6f495
add web special remote
...
Generalized LocationLog to PresenceLog, and use a presence log to record
urls for the web special remote.
2011-07-01 15:30:42 -04:00
Joey Hess
f6063a094e
renamed GitRepo to Git
...
It was always imported qualified as Git anyway
2011-06-30 13:21:39 -04:00
Joey Hess
06a1f5f742
factor out file list stuff from GitRepo
...
GitRepo is getting too large an interface; these all fit nicely into a
submodule.
2011-06-29 11:55:16 -04:00
Joey Hess
56bc3e95ca
refactor some boilerplate
2011-05-15 02:02:46 -04:00
Joey Hess
bc51387e6d
Periodically flush git command queue, to avoid boating memory usage too much.
...
Since the queue is flushed in between subcommand actions being run,
there should be no issues with actions that expect to queue up some stuff
and have it run after they do other stuff. So I didn't have to audit for
such assumptions.
2011-04-07 13:59:31 -04:00
Joey Hess
140a351fc5
avoid version check before running version and upgrade commands
...
There are two types of commands; those that access the repository and those
that don't. Sorted.
2011-03-19 18:58:49 -04:00
Joey Hess
fcdc4797a9
use ShellParam type
...
So, I have a type checked safe handling of filenames starting with dashes,
throughout the code.
2011-02-28 16:18:55 -04:00
Joey Hess
35a6506812
unannex: Fix recently introduced bug when attempting to unannex more than one file at a time.
2011-02-09 11:02:21 -04:00
Joey Hess
0e7984a793
add check for unclean tree
2011-02-01 22:02:19 -04:00
Joey Hess
c77ac11acc
unannex: Commit staged changes at end
...
to avoid some confusing behavior with the pre-commit hook, which would see
some types of commits after an unannex as checking in of an unlocked file.
2011-02-01 21:27:23 -04:00
Joey Hess
109a719b03
parameterize Backend type
...
This allows the Backend type to not depend on the Annex type, and
so the Annex type can later be moved out of TypeInternals.
2011-01-25 21:02:34 -04:00
Joey Hess
e7b557ef5d
got rid of Core module
...
Most of it was to do with managing annexed Content, so put there
2011-01-16 16:05:05 -04:00
Joey Hess
32b0e10390
unannex: Now skips files whose content is not present, rather than it being an error. This allows gradual conversion from one backend to another by running unannex followed by add in each repository.
2011-01-08 15:14:41 -04:00
Joey Hess
a89a6f2114
refactor in preparation for adding a git-annex-shell command
2010-12-30 15:06:26 -04:00
Joey Hess
6a5be9d53c
rename some stuff and prepare to break out more into Command/*
2010-12-30 14:19:16 -04:00
Joey Hess
653ad35a9f
In .gitattributes, the git-annex-numcopies attribute can be used to control the number of copies to retain of different types of files.
2010-11-28 15:28:20 -04:00
Joey Hess
eeae910242
finished hlinting
2010-11-22 17:51:55 -04:00
Joey Hess
da0de293d1
refactor param seeking
2010-11-11 18:54:52 -04:00
Joey Hess
fb824f7eb0
use -- before filenames when running git add, git rm, etc
2010-11-10 14:15:21 -04:00
Joey Hess
1d32d902c9
Annexed file contents are now made unwritable and put in unwriteable directories, to avoid them accidentially being removed or modified. (Thanks Josh Triplett for the idea.)
2010-11-08 19:26:37 -04:00
Joey Hess
070e8530c1
refactoring, no code changes really
2010-11-08 15:15:21 -04:00
Joey Hess
0eae5b806c
broke subcommands out into separate modules
2010-11-02 19:04:24 -04:00