summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAge
* v6 git-annex unlockGravatar Joey Hess2015-12-10
| | | | | | | | | | | Note that the implementation uses replaceFile, so that the actual replacement of the work tree file is atomic. This seems a good property to have! It would be possible for unlock in v6 mode to be run on files that do not have their content present. However, that would be a behavior change from before, and I don't see any immediate need to support it, so I didn't implement it.
* add generalized linkAnnex'Gravatar Joey Hess2015-12-10
|
* always format pointer file with a trailing newlineGravatar Joey Hess2015-12-10
| | | | | | | Before the smudge filter added a trailing newline, but other things that wrote formatPointer to a file did not. also some new pointer staging code to use later
* todoGravatar Joey Hess2015-12-10
|
* check InodeCache in inAnnex et alGravatar Joey Hess2015-12-10
| | | | | | This avoids querying the database when the content file doen't exist (or otherwise fails the provided check). However, it does add overhead of querying the database, and will certianly impact performance.
* check inode cache in prepSendAnnexGravatar Joey Hess2015-12-10
| | | | | This does mean one query of the database every time an object is sent. May impact performance.
* moveGravatar Joey Hess2015-12-10
|
* Merge branch 'master' into smudgeGravatar Joey Hess2015-12-10
|\
| * commentGravatar Joey Hess2015-12-10
| |
| * Add S3 features to git-annex version output.Gravatar Joey Hess2015-12-10
| |
| * commentGravatar Joey Hess2015-12-10
| |
| * responseGravatar Joey Hess2015-12-10
| |
| * responseGravatar Joey Hess2015-12-10
| |
| * Added a comment: The downsideGravatar https://openid.stackexchange.com/user/27ceb3c5-0762-42b8-8f8a-ed21c284748f2015-12-10
| |
* | make clear when code is using deprecated direct mode filesGravatar Joey Hess2015-12-09
| |
* | reorderGravatar Joey Hess2015-12-09
| |
| * (no commit message)Gravatar https://openid.stackexchange.com/user/3ee5cf54-f022-4a71-8666-3c2b5ee231dd2015-12-09
| |
| * Merge branch 'master' of ssh://git-annex.branchable.comGravatar Joey Hess2015-12-09
| |\
| * | devblogGravatar Joey Hess2015-12-09
| | |
* | | Merge branch 'master' into smudgeGravatar Joey Hess2015-12-09
|\| |
* | | use InodeCache when dropping a key to see if a pointer file can be safely resetGravatar Joey Hess2015-12-09
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The Keys database can hold multiple inode caches for a given key. One for the annex object, and one for each pointer file, which may not be hard linked to it. Inode caches for a key are recorded when its content is added to the annex, but only if it has known pointer files. This is to avoid the overhead of maintaining the database when not needed. When the smudge filter outputs a file's content, the inode cache is not updated, because git's smudge interface doesn't let us write the file. So, dropping will fall back to doing an expensive verification then. Ideally, git's interface would be improved, and then the inode cache could be updated then too.
* | | add inode cache to the dbGravatar Joey Hess2015-12-09
| | | | | | | | | | | | | | | | | | | | | | | | | | | Renamed the db to keys, since it is various info about a Keys. Dropping a key will update its pointer files, as long as their content can be verified to be unmodified. This falls back to checksum verification, but I want it to use an InodeCache of the key, for speed. But, I have not made anything populate that cache yet.
| | * Added a commentGravatar openmedi2015-12-09
| | |
* | | move InodeSentinal from direct mode code to its own moduleGravatar Joey Hess2015-12-09
| | | | | | | | | | | | | | | Will be used outside of direct mode for v6 unlocked files, and is already used outside of direct mode when adding files to annex.
* | | link/copy pointer files to object content when it's addedGravatar Joey Hess2015-12-09
| | |
* | | avoid clean filter trying to annex a pointer fileGravatar Joey Hess2015-12-09
| | |
* | | avoid pre-commit hook messing up new-style unlocked files in v6 repoGravatar Joey Hess2015-12-09
| | |
* | | stash DbHandle in Annex stateGravatar Joey Hess2015-12-09
| | |
* | | refactor and improve pointer file handling codeGravatar Joey Hess2015-12-09
| | |
| | * Added a comment: anyone saw/worked on backend for watchdox service? (not ↵Gravatar https://me.yahoo.com/a/EbvxpTI_xP9Aod7Mg4cwGhgjrCrdM5s-#7c0f42015-12-08
| |/ | | | | | | free one but needed :-/)
* | todoGravatar Joey Hess2015-12-08
| |
| * add news item for git-annex 5.20151208Gravatar Joey Hess2015-12-08
| |
| * prep release5.20151208Gravatar Joey Hess2015-12-08
| |
| * responseGravatar Joey Hess2015-12-08
| |
| * Added a comment: Problems initializing glacier remoteGravatar ben2015-12-08
| |
| * I started using a repo on S3, so that partially answered my question about ↵Gravatar wsha.code+ga@b38779424f41c5701bbe5937340be43ff1474b2d2015-12-08
| | | | | | | | how files are stored on S3.
| * Added a commentGravatar wsha.code+ga@b38779424f41c5701bbe5937340be43ff1474b2d2015-12-08
| |
| * Added a comment: How to view configuration of special remotes?Gravatar cantora@432fae6be728a32ac472387df86a8922f059d4a62015-12-08
| |
| * Merge branch 'master' of ssh://git-annex.branchable.comGravatar Joey Hess2015-12-07
| |\
| * | devblogGravatar Joey Hess2015-12-07
| | |
* | | long walk led to long list of things to doGravatar Joey Hess2015-12-07
| | |
* | | require "annex/objects/" before key in pointer filesGravatar Joey Hess2015-12-07
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This removes ambiguity, because while someone might have "WORM--foo" in a file that's not intended to be a git-annex pointer file, "annex/objects/WORM--foo" is less likely. Also, ee0c34c8f2f94775b39ef10ed580cab47d2f929c had a caveat about symlink targets being parsed as pointer files, and now the same parser is used for both. I did not include any hash directories before the key in the pointer file, as they're not needed. However, if they were included, the parser would still work ok.
* | | support pointer filesGravatar Joey Hess2015-12-07
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Backend.lookupFile is changed to always fall back to catKey when operating on a file that's not a symlink. catKey is changed to understand pointer files, as well as annex symlinks. Before, catKey needed a file mode witness, to be sure it was looking at a symlink. That was complicated stuff. Now, it doesn't actually care if a file in git is a symlink or not; in either case asking git for the content of the file will get the pointer to the key. This does mean that git-annex will treat a link foo -> WORM--bar as a git-annex file, and also treats a regular file containing annex/objects/WORM--bar as a git-annex file. Calling catKey could make git-annex commands need to do more work than before. This would especially be the case if a repo contained many regular files, and only a few annexed files, as now git-annex will need to ask git about the contents of the regular files.
* | | update associated files database on smudge and cleanGravatar Joey Hess2015-12-07
| | |
* | | associated files databaseGravatar Joey Hess2015-12-07
| | |
* | | wordingGravatar Joey Hess2015-12-07
| | |
* | | Merge branch 'master' into smudgeGravatar Joey Hess2015-12-07
|\| |
| | * Added a commentGravatar sts2015-12-07
| |/
| * Merge branch 'master' of ssh://git-annex.branchable.comGravatar Joey Hess2015-12-06
| |\
| * | fix temp filenameGravatar Joey Hess2015-12-06
| | | | | | | | | | | | | | | | | | | | | Was not putting it inside the temp dir, but next to it! This was just wrong, and it led to a longer filename that desired being used, leading to some bug reports.