aboutsummaryrefslogtreecommitdiff
path: root/Command
Commit message (Collapse)AuthorAge
* use sync command merge engine in assistantGravatar Joey Hess2012-12-25
| | | | To handle direct mode merging.
* add a guard against using git annex add in direct mode repoGravatar Joey Hess2012-12-24
| | | | | Currently, it deletes files when run in one, so until I get a chance to fix it, block foot shooting.
* assistant adding of files in direct modeGravatar Joey Hess2012-12-24
|
* handle sha*sum's leading \ in checksum with certian unsual filenamesGravatar Joey Hess2012-12-20
| | | | | | | | * Bugfix: Remove leading \ from checksums output by sha*sum commands, when the filename contains \ or a newline. Closes: #696384 * fsck: Still accept checksums with a leading \ as valid, now that above bug is fixed. * migrate: Remove leading \ in checksums
* more quickcheck funGravatar Joey Hess2012-12-19
|
* commentGravatar Joey Hess2012-12-19
|
* partial and incomplete automatic merging in direct modeGravatar Joey Hess2012-12-18
| | | | Handles our file right, but not theirs.
* direct mode merging works!Gravatar Joey Hess2012-12-18
| | | | | Automatic merge resoltion code needs to be fixed to preserve objects from direct mode files.
* Merge branch 'master' into desymlinkGravatar Joey Hess2012-12-18
|\
| * vicfg: Quote filename. Closes: #696193Gravatar Joey Hess2012-12-18
| |
* | add ok'sGravatar Joey Hess2012-12-13
| |
* | reorder for better displayGravatar Joey Hess2012-12-13
| |
* | added direct and indirect commandsGravatar Joey Hess2012-12-13
| |
* | show direct/indirect modeGravatar Joey Hess2012-12-13
| |
* | Merge branch 'master' into desymlinkGravatar Joey Hess2012-12-13
|\|
| * whitespace fixesGravatar Joey Hess2012-12-13
| |
* | direct mode committingGravatar Joey Hess2012-12-12
| |
* | also update direct mode associated files in local mergeGravatar Joey Hess2012-12-12
| |
* | direct mode mappings now updated by git annex syncGravatar Joey Hess2012-12-10
| | | | | | | | | | Still lots to do to make sync handle direct mode, but this is a good first step.
* | Got object sending working in direct mode.Gravatar Joey Hess2012-12-08
|/ | | | | | | | | | | However, I don't yet have a reliable way to deal with files being modified while they're being transferred. I have code that detects it on the sending side, but the receiver is still free to move the wrong content into its annex, and record that it has the content. So that's not acceptable, and I'll need to work on it some more. However, at this point I can use a direct mode repository as a remote and transfer files from and to it.
* --auto fixesGravatar Joey Hess2012-12-06
| | | | | | | * get/copy --auto: Transfer data even if it would exceed numcopies, when preferred content settings want it. * drop --auto: Fix dropping content when there are no preferred content settings.
* The standalone builds now unset their special path and library path ↵Gravatar Joey Hess2012-11-27
| | | | | | variables before running the system web browser. Should fix a crash reported on OSX.
* formattingGravatar Joey Hess2012-11-25
|
* avoid commits when running fix and findGravatar Joey Hess2012-11-24
|
* webapp and assistant glacier supportGravatar Joey Hess2012-11-24
|
* directory special remote: Made more efficient and robust.Gravatar Joey Hess2012-11-19
| | | | | | | | | Files are now written to a tmp directory in the remote, and once all chunks are written, etc, it's moved into the final place atomically. For now, checkpresent still checks every single chunk of a file, because the old method could leave partially transferred files with some chunks present and others not.
* remove showOutput; git is run in quiet modeGravatar Joey Hess2012-11-15
|
* where indentationGravatar Joey Hess2012-11-12
|
* flush stdoutGravatar Joey Hess2012-11-09
| | | | It's block-buffered here.
* use xmpp::user@host for xmpp remotesGravatar Joey Hess2012-11-09
| | | | | | Inject the required git-remote-xmpp into PATH when running xmpp git push. Rest of the time it will not be in PATH, and git won't be able to talk to xmpp remotes.
* add xmppgit command; roughed out xmpp push protocol and designGravatar Joey Hess2012-11-06
|
* better handling of lifting from XMPP -> AssistantGravatar Joey Hess2012-11-05
|
* split remaining assistant typesGravatar Joey Hess2012-10-30
|
* split out daemonstatus typesGravatar Joey Hess2012-10-30
|
* Assistant monad, stage 1Gravatar Joey Hess2012-10-29
| | | | | This adds the Assistant monad, and an AssistantData structure. So far, none of the assistant's threads run in the monad yet.
* ensure that git-annex branch is pushed after a successful transferGravatar Joey Hess2012-10-28
| | | | | | | | | | | | | | | | | | | | | | | | | | | | I now have this topology working: assistant ---> {bare repo, special remote} <--- assistant And, I think, also this one: +----------- bare repo --------+ v v assistant ---> special remote <--- assistant While before with assistant <---> assistant connections, both sides got location info updated after a transfer, in this topology, the bare repo *might* get its location info updated, but the other assistant has no way to know that it did. And a special remote doesn't record location info, so transfers to it won't propigate out location log changes at all. So, for these to work, after a transfer succeeds, the git-annex branch needs to be pushed. This is done by recording a synthetic commit has occurred, which lets the pusher handle pushing out the change (which will include actually committing any still journalled changes to the git-annex branch). Of course, this means rather a lot more syncing action than happened before. At least the pusher bundles together very close together pushes, somewhat. Currently it just waits 2 seconds between each push.
* (re)start XMPP when it's configured in the webappGravatar Joey Hess2012-10-27
|
* deal with mtl/monads-tf conflictGravatar Joey Hess2012-10-24
| | | | | | I had been using -ignore-package monads-tf to deal with this, but the XMPP library uses monads-tf, so that also ignores it. Instead, use PackageImports to force use of mtl in my own code.
* uninit: Check and abort if there are symlinks to annexed content that are ↵Gravatar Joey Hess2012-10-22
| | | | not checked into git.
* remove some more !!Gravatar Joey Hess2012-10-20
|
* drop unwanted content in the transfer scanGravatar Joey Hess2012-10-18
| | | | | | | | This was complicated quite a bit by needing to check numcopies. I optimised that, so it only looks up numcopies once per file, no matter how many remotes it checks to drop from. Although it did just occur to me that it might be better to first check if it wants to drop content, and only then check numcopies..
* better fix for zombie problem, which turns out to be a zombie ssh started by ↵Gravatar Joey Hess2012-10-17
| | | | | | | | | | | | | | | | | | | | | rsync When rsyncProgress pipes rsync's stdout, this turns out to cause a ssh process started by rsync to be left behind as a zombie. I don't know why, but my recent zombie reaping cleanup was correct, it's just that this other zombie, that's not directly started by git-annex, was no longer reaped due to changes in the cleanup. Make rsyncProgress reap the zombie started by rsync, as a workaround. FWIW, the process tree looks like this. It seems like the rsync child is for some reason starting but not waiting on this extra ssh process. Ssh connection caching may be involved -- disabling it seemed to change the shape of the tree, but did not eliminate the zombie. 9378 pts/14 S+ 0:00 | \_ rsync -p --progress --inplace -4 -e 'ssh' '-S' ... 9379 pts/14 S+ 0:00 | | \_ ssh ... 9380 pts/14 S+ 0:00 | | \_ rsync -p --progress --inplace -4 -e 'ssh' '-S' ... 9381 pts/14 Z+ 0:00 | \_ [ssh] <defunct>
* nub the autostart fileGravatar Joey Hess2012-10-14
| | | | | It's possible for the file to get duplicate lines in it, and if so, we want to ignore the dups.
* add help commandGravatar Joey Hess2012-10-13
|
* full analysis of ways content could stop being preferred and need to be droppedGravatar Joey Hess2012-10-13
|
* vicfg: New file format, avoids ambiguity with repos that have the same ↵Gravatar Joey Hess2012-10-12
| | | | | | | | | description, or no description. This is also nice in that uuids are all the same length, so the values of each line, line up. Also a great deal of boilerplate elimination.
* git config remote.name.annex-sync can be used to control whether a remote ↵Gravatar Joey Hess2012-10-11
| | | | gets synced.
* webapp: display message about starting web browserGravatar Joey Hess2012-10-11
| | | | | One reason to do this is that on OSX, it doesn't jump to the web browser when opening a new page. Linux seems ahead in usability here... :P
* better messageGravatar Joey Hess2012-10-11
|
* webapp: avoid infinite loop on startGravatar Joey Hess2012-10-11
| | | | | | | | | | | | If the autostart file lists a repository, for which a directory exists, but there's not actually a valid git repo in there, the web app used to try to use it, and see it wasn't valid, and then try to autostart again. The ensuing runaway loop also ate memory, although not as fast as I was led to belive was happening to someone on IRC yesterday. So that guy may have had a different problem. But this seems otherwise a reasonable fit for the circumstances described, if git-annex was started before something that occurred during desktop login that made the repository available.