| Commit message (Collapse) | Author | Age |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
It was possible for a interrupted sync or merge in direct mode to
leave the work tree out of sync with the last recorded commit.
This would result in the next commit seeing files missing from the work
tree, and committing their removal.
Now, a direct mode merge happens not only in a throwaway work tree, but using
a temporary index file, and without any commits or index changes
being made until the real work tree has been updated. If the merge is
interrupted, the work tree may have some updated files, but worst case a
commit will redundantly commit changes that come from the merge.
This commit was sponsored by Tony Cantor.
|
|\
| |
| |
| |
| | |
Conflicts:
doc/devblog/day_152__more_ssh_connection_caching.mdwn
|
| | |
|
|/ |
|
|
|
|
|
|
|
|
|
| |
So far, handling connecting to git-annex-shell notifychanges, and
pulling immediately when a change is pushed to a remote.
A little bit buggy (crashes after the first pull), but it already works!
This commit was sponsored by Mark Sheppard.
|
|
|
|
|
|
| |
http://git-annex.branchable.com/bugs/Unicode_file_names_ignored_on_Windows/
Not a complete fix yet.
|
|
|
|
| |
Not very well tested, but I'm sure it doesn't eg, loop forever.
|
|
|
|
| |
Avoids any buffering-related blocking.
|
|
|
|
|
| |
A repo with a lot of objects will now stream them through, rather than
buffering a list of them all in memory.
|
|
|
|
|
|
|
|
|
| |
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.
|
| |
|
|
|
|
| |
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.
|
| |
|
| |
|
|
|
|
| |
about corrupt pack files.
|
|
|
|
|
|
|
|
| |
Removed instance, got it all to build using fromRef. (With a few things
that really need to show something using a ref for debugging stubbed out.)
Then added back Read instance, and made Logs.View use it for serialization.
This changes the view log format.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
(And a vpop command, which is still a bit buggy.)
Still need to do vadd and vrm, though this also adds their documentation.
Currently not very happy with the view log data serialization. I had to
lose the TDFA regexps temporarily, so I can have Read/Show instances of
View. I expect the view log format will change in some incompatable way
later, probably adding last known refs for the parent branch to View
or something like that.
Anyway, it basically works, although it's a bit slow looking up the
metadata. The actual git branch construction is about as fast as it can be
using the current git plumbing.
This commit was sponsored by Peter Hogg.
|
|
|
|
|
|
|
|
| |
Promosing work toward metadata driven filter branches. A few methods
to construct them are stubbed out; all the data types and pure code
seems good.
This commit was sponsored by Walter Somerville.
|
| |
|
|
|
|
|
|
| |
This is no longer necessary, at least with msysgit 1.8.5.2.msysgit.0.
Its root cause may have been fixed by other recent git path fixes.
It was causing the webapp to fail to make repos on other drives.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Note that on Windows a remote with a path like /home/foo/bar
is interpreted by git as being some screwy relative path (relative to what
exactly seems ill-defined -- it seemed relative to C:\Program Files\Git\ in
my tests!) So no attempt has been made to handle such a path sanely, just not
to crash when encountering it.
Note that "C:\\foo" </> "/home/foo/bar" yields /home/foo/bar even though
that is not absolute! I don't know what to make of all this,
except that I will be very happy when this crock of **** vanishes from
the face of the earth.
|
|
|
|
|
| |
This was needed when absNormPath was not being used on Windows, since path
normalization includes removing ./
|
|
|
|
| |
date. For example, --in="here@{yesterday}"
|
| |
|
| |
|
|
|
|
| |
directory to be created instead of .git/refs
|
|
|
|
| |
implemented.
|
|
|
|
| |
keeps crashing when restarted.
|
|
|
|
| |
subdirectories to go missing.
|
| |
|
|
|
|
| |
follow symlinks to other directories, and add their contents to the annex.
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
| |
Fixes a test case I received where a corrupted repo was repaired, but the
git-annex branch was not. The root of the problem was that the
MissingObject returned by the repair code was not necessarily a complete
set of all objects that might have been deleted during the repair.
So, stop trying to return that at all, and instead make the index file
checking code explicitly verify that each object the index uses is present.
|
|
|
|
|
| |
Seems that verify_path() rejects such a path on Windows, but I cannot see
why. Git bug?
|
|
|
|
| |
commands are available.
|
|
|
|
|
|
|
|
|
|
|
|
| |
the full contents of files in the tree.
The assistant's commit code also always avoids git commit, for simplicity.
Indirect mode sync still does a git commit -a to catch unstaged changes.
Note that this means that direct mode sync no longer runs the pre-commit
hook or any other hooks git commit might call. The git annex pre-commit
hook action for direct mode is however explicitly run. (The assistant
already ran git commit with hooks disabled, so no change there.)
|
| |
|
|
|
|
|
|
|
| |
they use the new guarded direct mode.
git treats eg ~/annex as a bare git repository located in ~/.annex/.git
if ~/annex/.git/config has core.bare=true.
|
|
|
|
|
| |
This may be a little late, since a fsck has already been done,
but it can't hurt.
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
| |
In this case, the index problem prevented fsck from finding the other
problems.
|