| Commit message (Collapse) | Author | Age |
| |
|
|
|
|
|
|
| |
http://git-annex.branchable.com/bugs/Unicode_file_names_ignored_on_Windows/
Not a complete fix yet.
|
|
|
|
|
|
|
|
|
|
| |
"$field-lastchanged" that gives the timestamp of the last change to that field.
Note that this is a nearly entirely free feature. The data was already
stored in the metadata log in an easily accessible way, and already was
parsed to a time when parsing the log. The generation of the metadata
fields may even be done lazily, although probably not entirely (the map
has to be evaulated to when queried).
|
| |
|
|
|
|
| |
does not exist, or is not a git repo.
|
| |
|
| |
|
| |
|
|
|
|
|
| |
This is stored in the git-annex branch, but not yet actually hooked up and
used.
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
expressions.
For example "standard or (include=otherdir/*)" or even "not standard"
Note that the implementation avoids any potential for loops (if a
standard preferred content expression itself mentioned standard).
This commit was sponsored by Jochen Bartl.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
broke the old method.
Old ssh did not check the hostname passed to -O stop, so I had used "any".
But now ssh does check it! I think this happened as part of the client-side
hostname canonicalization changes in 6.5p1, but have not verified that
introduced the problem.
The symptom was that it would try to dns lookup "any", which often caused a
bit of a delay at shutdown. And the old ssh connection kept running, so
it would do it over and over again.
Fixed by using localhost, which hopefully reliably resolves to some address
that ssh will accept.. Also nukeFile the socket after ssh has been asked to
shutdown, just in case.
|
|
|
|
|
|
|
|
|
| |
repository's description will now fail when multiple repositories match, rather than picking a repository at random.
So will --in=
Note that since limitIn is not used by preferred content expressions,
it's ok for it to throw an exception.
|
|
|
|
| |
believed to be present on the remote.
|
|
|
|
|
| |
Debian stable does not have securemem, but neither does it have warp-tls,
so just disable use of securemem when not building with https support.
|
|
|
|
|
|
|
|
|
| |
From 1.7 gb to 900 mb on 300 thousand unique reported shas.
When shas are not unique, this streams much better than before, so won't
buffer the full list before putting them into the Set and throwing away
dups. And when fsck output includes ignorable lines, especially
dangling object lines, they won't be buffered in memory at all.
|
|
|
|
|
|
| |
Done on Debian to keep the autobuilds and Debian packages the same,
but can be reverted for backports, since haskell-dns is not available
there.
|
|
|
|
|
|
|
|
|
| |
unused and unannex
unused: In direct mode, files that are deleted from the work tree are no longer incorrectly detected as unused.
Direct mode `git annex info` slows down a bit due to more stringent
checking, but not by a lot.
|
| |
|
|
|
|
|
|
| |
Benchmarking this with 1000 small files being copied, the time reduced from
15.98s to 14.64s -- an 8% improvement in the non-data-transfer overhead of
git-annex copy.
|
| |
|
| |
|
| |
|
|
|
|
|
|
| |
git-annex-shell does not need a pty, so this speeds things up.
Also, it may avoid weird misconfigured systems that try to run screen or
tmux on every ssh login from doing so.
|
|
|
|
| |
response timeout, which was only 5 seconds.
|
|
|
|
|
| |
I suppose this is not necessary when it has a local cache, so I didn't
notice it was missing.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
regular git file.
This is a new feature, it was not handled before, since it's a bit of an
edge case. However, it can be handled exactly the same as a file/dir
conflict, just leave the non-annexed item alone.
While implementing this, the core resolveMerge' function got a lot simpler
and clearer. Note especially that where before there was an asymetric call to
stagefromdirectmergedir, now graftin is called symmetrically in both cases.
And, in order to add that `graftin us`, the current branch needed to be
known (if there is no current branch, there cannot be a merge conflict).
This led to some cleanups of how autoMergeFrom behaved when there is no
current branch.
This commit was sponsored by Philippe Gauthier.
|
|
|
|
|
|
|
|
|
|
| |
Added test cases for both ways this can happen, with a conflict involving a
file, or a directory.
Cleaned up resolveMerge to not touch the work tree in direct mode, which
turned out to be the only way to handle things.. And makes it much nicer.
Still need to run test suite on windows.
|
|
|
|
| |
deleted when merging with a remote that added a file by the same name. (Thanks, jkt)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
types of files
Using the extract(1) program to do the heavy lifting.
Decided to make git-annex run pre-commit-annex when committing. Since
git-annex pre-commit also runs it, it'll be run when git commit is run too,
via the pre-commit hook. This basically gives back the pre-commit hook
that git-annex took away. The implementation avoids repeatedly looking
for the hook script when the assistant is running and committing
repeatedly; only checks if the hook is available once.
To make the script simpler, made git-annex metadata -s field?=value
only set a field when it's not already got a value.
This commit was sponsored by bak.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
| |
using !tag and field!=value.
Note that negated globs are not supported. Would have complicated the code
to add them, without changing the data type serialization in a
non-backwards-compatable way.
This commit was sponsored by Denver Gingerich.
|
| |
|
| |
|
| |
|
|
|
|
| |
repository; it only makes sense for special remotes.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
| |
autostart file that don't have a git directory anymore.
Trying to start in such a repo will, obviously, fail.
Note that assistant --autostart will try to start in such a repo, and fail,
but does start successfully in the other autostart repos.
|
|
|
|
|
| |
Overhead: git annex addurl runs quvi --version once.
And more bloat to Annex state..
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
only partially transferred objects.
This allows eg, putting .git/annex/tmp on a ram disk, if the disk IO
of temp object files is too annoying (and if you don't want to keep
partially transferred objects across reboots).
.git/annex/misctmp must be on the same filesystem as the git work tree,
since files are moved to there in a way that will not work cross-device,
as well as symlinked into there.
I first wanted to put the tmp objects in .git/annex/objects/tmp, but
that would pose transition problems on upgrade when partially transferred
objects existed.
git annex info does not currently show the size of .git/annex/misctemp,
since it should stay small. It would also be ok to make something clean it
out, periodically.
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
Use posix </> etc for urls.
|