git-annex.git
10 years agoupdate
Joey Hess [Fri, 11 Dec 2015 20:22:40 +0000 (16:22 -0400)]
update

10 years agochecked getKeysPresent; it's ok for v6 unlocked files
Joey Hess [Fri, 11 Dec 2015 20:12:42 +0000 (16:12 -0400)]
checked getKeysPresent; it's ok for v6 unlocked files

When a v6 unlocked files is removed from the work tree,
unused doesn't show it. When it gets removed from the index,
unused does show it. This is the same as a locked file.

10 years agofsck for v6 unlocked files
Joey Hess [Fri, 11 Dec 2015 20:05:56 +0000 (16:05 -0400)]
fsck for v6 unlocked files

This only adds 1 stat to each file fscked for locked files, so
added overhead is minimal.

For unlocked files it has to access the database to see if a file
is modified.

10 years agofinish v6 git-annex lock
Joey Hess [Fri, 11 Dec 2015 19:13:36 +0000 (15:13 -0400)]
finish v6 git-annex lock

This was a doozy!

10 years agoonly make 1 hardlink max between pointer file and annex object
Joey Hess [Fri, 11 Dec 2015 17:56:12 +0000 (13:56 -0400)]
only make 1 hardlink max between pointer file and annex object

If multiple files point to the same annex object, the user may want to
modify them independently, so don't use a hard link.

Also, check diskreserve when copying.

10 years agoMerge branch 'master' into smudge
Joey Hess [Fri, 11 Dec 2015 17:50:31 +0000 (13:50 -0400)]
Merge branch 'master' into smudge

10 years agofsck: Failed to honor annex.diskreserve when checking a remote.
Joey Hess [Fri, 11 Dec 2015 17:50:27 +0000 (13:50 -0400)]
fsck: Failed to honor annex.diskreserve when checking a remote.

10 years agoMerge branch 'master' of ssh://git-annex.branchable.com
Joey Hess [Fri, 11 Dec 2015 16:15:29 +0000 (12:15 -0400)]
Merge branch 'master' of ssh://git-annex.branchable.com

10 years agowebdav: When testing the WebDAV server, send a file with content. The empty file...
Joey Hess [Fri, 11 Dec 2015 16:13:20 +0000 (12:13 -0400)]
webdav: When testing the WebDAV server, send a file with content. The empty file it was sending tickled bugs in some php WebDAV server.

10 years agocomment
Joey Hess [Fri, 11 Dec 2015 15:27:33 +0000 (11:27 -0400)]
comment

10 years agocomment
Joey Hess [Fri, 11 Dec 2015 15:23:57 +0000 (11:23 -0400)]
comment

10 years agocomment
Joey Hess [Fri, 11 Dec 2015 15:20:35 +0000 (11:20 -0400)]
comment

10 years agoadd Blackblaze B2 extranal special remote to the list
Joey Hess [Fri, 11 Dec 2015 15:06:02 +0000 (11:06 -0400)]
add Blackblaze B2 extranal special remote to the list

10 years agocomment
Joey Hess [Fri, 11 Dec 2015 15:04:48 +0000 (11:04 -0400)]
comment

10 years agoclean up
Joey Hess [Fri, 11 Dec 2015 15:03:22 +0000 (11:03 -0400)]
clean up

10 years agowip
Joey Hess [Fri, 11 Dec 2015 14:42:18 +0000 (10:42 -0400)]
wip

10 years agoAdded a comment
yminus [Thu, 10 Dec 2015 22:25:26 +0000 (22:25 +0000)]
Added a comment

10 years agov6 git-annex unlock
Joey Hess [Thu, 10 Dec 2015 20:12:05 +0000 (16:12 -0400)]
v6 git-annex unlock

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.

10 years agoadd generalized linkAnnex'
Joey Hess [Thu, 10 Dec 2015 20:07:50 +0000 (16:07 -0400)]
add generalized linkAnnex'

10 years agoalways format pointer file with a trailing newline
Joey Hess [Thu, 10 Dec 2015 20:06:58 +0000 (16:06 -0400)]
always format pointer file with a trailing newline

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

10 years agoAdded a comment
http://joeyh.name/ [Thu, 10 Dec 2015 18:58:46 +0000 (18:58 +0000)]
Added a comment

10 years agotodo
Joey Hess [Thu, 10 Dec 2015 18:54:03 +0000 (14:54 -0400)]
todo

10 years agocheck InodeCache in inAnnex et al
Joey Hess [Thu, 10 Dec 2015 18:51:04 +0000 (14:51 -0400)]
check InodeCache in inAnnex et al

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.

10 years agocheck inode cache in prepSendAnnex
Joey Hess [Thu, 10 Dec 2015 18:29:34 +0000 (14:29 -0400)]
check inode cache in prepSendAnnex

This does mean one query of the database every time an object is sent.
May impact performance.

10 years agomove
Joey Hess [Thu, 10 Dec 2015 18:20:38 +0000 (14:20 -0400)]
move

10 years agoMerge branch 'master' into smudge
Joey Hess [Thu, 10 Dec 2015 18:07:11 +0000 (14:07 -0400)]
Merge branch 'master' into smudge

10 years agocomment
Joey Hess [Thu, 10 Dec 2015 16:31:26 +0000 (12:31 -0400)]
comment

10 years agoAdded a comment: Complete removal
fbicknel@01ede624a1a56b3998b823e9b60da0ff81cccb16 [Thu, 10 Dec 2015 16:16:43 +0000 (16:16 +0000)]
Added a comment: Complete removal

10 years agoAdd S3 features to git-annex version output.
Joey Hess [Thu, 10 Dec 2015 15:42:49 +0000 (11:42 -0400)]
Add S3 features to git-annex version output.

10 years agocomment
Joey Hess [Thu, 10 Dec 2015 15:22:28 +0000 (11:22 -0400)]
comment

10 years agoresponse
Joey Hess [Thu, 10 Dec 2015 15:20:01 +0000 (11:20 -0400)]
response

10 years agoresponse
Joey Hess [Thu, 10 Dec 2015 15:15:06 +0000 (11:15 -0400)]
response

10 years agoAdded a comment: The downside
https://openid.stackexchange.com/user/27ceb3c5-0762-42b8-8f8a-ed21c284748f [Thu, 10 Dec 2015 03:45:09 +0000 (03:45 +0000)]
Added a comment: The downside

10 years agomake clear when code is using deprecated direct mode files
Joey Hess [Wed, 9 Dec 2015 23:43:15 +0000 (19:43 -0400)]
make clear when code is using deprecated direct mode files

10 years agoreorder
Joey Hess [Wed, 9 Dec 2015 23:38:37 +0000 (19:38 -0400)]
reorder

10 years ago(no commit message)
https://openid.stackexchange.com/user/3ee5cf54-f022-4a71-8666-3c2b5ee231dd [Wed, 9 Dec 2015 23:01:21 +0000 (23:01 +0000)]

10 years agoMerge branch 'master' of ssh://git-annex.branchable.com
Joey Hess [Wed, 9 Dec 2015 22:14:19 +0000 (18:14 -0400)]
Merge branch 'master' of ssh://git-annex.branchable.com

10 years agodevblog
Joey Hess [Wed, 9 Dec 2015 22:13:31 +0000 (18:13 -0400)]
devblog

10 years agoMerge branch 'master' into smudge
Joey Hess [Wed, 9 Dec 2015 21:58:59 +0000 (17:58 -0400)]
Merge branch 'master' into smudge

10 years agouse InodeCache when dropping a key to see if a pointer file can be safely reset
Joey Hess [Wed, 9 Dec 2015 21:47:05 +0000 (17:47 -0400)]
use InodeCache when dropping a key to see if a pointer file can be safely reset

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.

10 years agoadd inode cache to the db
Joey Hess [Wed, 9 Dec 2015 21:00:37 +0000 (17:00 -0400)]
add inode cache to the db

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.

10 years agoAdded a comment
openmedi [Wed, 9 Dec 2015 20:18:48 +0000 (20:18 +0000)]
Added a comment

10 years agomove InodeSentinal from direct mode code to its own module
Joey Hess [Wed, 9 Dec 2015 19:42:16 +0000 (15:42 -0400)]
move InodeSentinal from direct mode code to its own module

Will be used outside of direct mode for v6 unlocked files, and is already
used outside of direct mode when adding files to annex.

10 years agolink/copy pointer files to object content when it's added
Joey Hess [Wed, 9 Dec 2015 19:25:14 +0000 (15:25 -0400)]
link/copy pointer files to object content when it's added

10 years agoavoid clean filter trying to annex a pointer file
Joey Hess [Wed, 9 Dec 2015 19:24:32 +0000 (15:24 -0400)]
avoid clean filter trying to annex a pointer file

10 years agoavoid pre-commit hook messing up new-style unlocked files in v6 repo
Joey Hess [Wed, 9 Dec 2015 19:18:25 +0000 (15:18 -0400)]
avoid pre-commit hook messing up new-style unlocked files in v6 repo

10 years agostash DbHandle in Annex state
Joey Hess [Wed, 9 Dec 2015 18:55:47 +0000 (14:55 -0400)]
stash DbHandle in Annex state

10 years agorefactor and improve pointer file handling code
Joey Hess [Wed, 9 Dec 2015 18:25:33 +0000 (14:25 -0400)]
refactor and improve pointer file handling code

10 years agoAdded a comment: anyone saw/worked on backend for watchdox service? (not free one...
https://me.yahoo.com/a/EbvxpTI_xP9Aod7Mg4cwGhgjrCrdM5s-#7c0f4 [Tue, 8 Dec 2015 19:45:03 +0000 (19:45 +0000)]
Added a comment: anyone saw/worked on backend for watchdox service? (not free one but needed :-/)

10 years agotodo
Joey Hess [Tue, 8 Dec 2015 17:07:45 +0000 (13:07 -0400)]
todo

10 years agoadd news item for git-annex 5.20151208
Joey Hess [Tue, 8 Dec 2015 15:28:19 +0000 (11:28 -0400)]
add news item for git-annex 5.20151208

10 years agoprep release
Joey Hess [Tue, 8 Dec 2015 15:14:28 +0000 (11:14 -0400)]
prep release

10 years agoresponse
Joey Hess [Tue, 8 Dec 2015 15:13:55 +0000 (11:13 -0400)]
response

10 years agoAdded a comment: Problems initializing glacier remote
ben [Tue, 8 Dec 2015 10:39:30 +0000 (10:39 +0000)]
Added a comment: Problems initializing glacier remote

10 years agoI started using a repo on S3, so that partially answered my question about how files...
wsha.code+ga@b38779424f41c5701bbe5937340be43ff1474b2d [Tue, 8 Dec 2015 10:02:06 +0000 (10:02 +0000)]
I started using a repo on S3, so that partially answered my question about how files are stored on S3.

10 years agoAdded a comment
wsha.code+ga@b38779424f41c5701bbe5937340be43ff1474b2d [Tue, 8 Dec 2015 09:44:49 +0000 (09:44 +0000)]
Added a comment

10 years agoAdded a comment: How to view configuration of special remotes?
cantora@432fae6be728a32ac472387df86a8922f059d4a6 [Tue, 8 Dec 2015 08:29:12 +0000 (08:29 +0000)]
Added a comment: How to view configuration of special remotes?

10 years agoMerge branch 'master' of ssh://git-annex.branchable.com
Joey Hess [Mon, 7 Dec 2015 21:25:20 +0000 (17:25 -0400)]
Merge branch 'master' of ssh://git-annex.branchable.com

10 years agodevblog
Joey Hess [Mon, 7 Dec 2015 21:24:44 +0000 (17:24 -0400)]
devblog

10 years agolong walk led to long list of things to do
Joey Hess [Mon, 7 Dec 2015 21:24:16 +0000 (17:24 -0400)]
long walk led to long list of things to do

10 years agorequire "annex/objects/" before key in pointer files
Joey Hess [Mon, 7 Dec 2015 19:45:08 +0000 (15:45 -0400)]
require "annex/objects/" before key in pointer files

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, 664cc987e806800ef46794f356003321170c1060 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.

10 years agosupport pointer files
Joey Hess [Mon, 7 Dec 2015 19:22:01 +0000 (15:22 -0400)]
support pointer files

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.

10 years agoupdate associated files database on smudge and clean
Joey Hess [Mon, 7 Dec 2015 18:35:46 +0000 (14:35 -0400)]
update associated files database on smudge and clean

10 years agoassociated files database
Joey Hess [Mon, 7 Dec 2015 17:42:03 +0000 (13:42 -0400)]
associated files database

10 years agowording
Joey Hess [Mon, 7 Dec 2015 16:30:10 +0000 (12:30 -0400)]
wording

10 years agoMerge branch 'master' into smudge
Joey Hess [Mon, 7 Dec 2015 16:29:34 +0000 (12:29 -0400)]
Merge branch 'master' into smudge

10 years agoAdded a comment
sts [Mon, 7 Dec 2015 08:12:26 +0000 (08:12 +0000)]
Added a comment

10 years agoMerge branch 'master' of ssh://git-annex.branchable.com
Joey Hess [Sun, 6 Dec 2015 20:56:16 +0000 (16:56 -0400)]
Merge branch 'master' of ssh://git-annex.branchable.com

10 years agofix temp filename
Joey Hess [Sun, 6 Dec 2015 20:50:37 +0000 (16:50 -0400)]
fix temp filename

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.

10 years agoavoid too long temp dir template
Joey Hess [Sun, 6 Dec 2015 20:42:40 +0000 (16:42 -0400)]
avoid too long temp dir template

The filename might be at or close to the filename length limit, so using it
as the template for the temp dir would then fail.

10 years agocleanup
Joey Hess [Sun, 6 Dec 2015 20:36:35 +0000 (16:36 -0400)]
cleanup

10 years agoavoid looping trying to make temp dir when the name is too long
Joey Hess [Sun, 6 Dec 2015 20:29:36 +0000 (16:29 -0400)]
avoid looping trying to make temp dir when the name is too long

Only loop when directory creation fails due to the directory existing
already.

10 years agoAdded a comment
torpidus [Sun, 6 Dec 2015 20:29:26 +0000 (20:29 +0000)]
Added a comment

10 years agogeneralize catchHardwareFault to catchIOErrorType
Joey Hess [Sun, 6 Dec 2015 20:26:38 +0000 (16:26 -0400)]
generalize catchHardwareFault to catchIOErrorType

10 years ago(no commit message)
torpidus [Sun, 6 Dec 2015 18:51:12 +0000 (18:51 +0000)]

10 years agoFix broken link to other bug
samuel.hym+bugs@a85e9c44dc6369ad6b12e8e6a3896ad34f7df4a3 [Sun, 6 Dec 2015 10:02:35 +0000 (10:02 +0000)]
Fix broken link to other bug

10 years agoReport bug due to broken createSymbolicLink
samuel.hym+bugs@a85e9c44dc6369ad6b12e8e6a3896ad34f7df4a3 [Sun, 6 Dec 2015 10:01:00 +0000 (10:01 +0000)]
Report bug due to broken createSymbolicLink

10 years agom
spwhitton [Sat, 5 Dec 2015 19:52:38 +0000 (19:52 +0000)]
m

10 years agoCopy hints for Emacs users from propellor coding style page
spwhitton [Sat, 5 Dec 2015 19:52:17 +0000 (19:52 +0000)]
Copy hints for Emacs users from propellor coding style page

10 years ago(no commit message)
a@b34f238966e58f7c2ea550cc4cab3005c0e33150 [Sat, 5 Dec 2015 18:17:45 +0000 (18:17 +0000)]

10 years agoMerge branch 'master' of ssh://git-annex.branchable.com
Joey Hess [Fri, 4 Dec 2015 22:05:18 +0000 (18:05 -0400)]
Merge branch 'master' of ssh://git-annex.branchable.com

10 years agodevblog
Joey Hess [Fri, 4 Dec 2015 21:57:34 +0000 (17:57 -0400)]
devblog

10 years agoinit: Configure .git/info/attributes to use git-annex as a smudge filter.
Joey Hess [Fri, 4 Dec 2015 21:57:15 +0000 (17:57 -0400)]
init: Configure .git/info/attributes to use git-annex as a smudge filter.

Note that this changes the default behavior of git add in a newly
initialized repository; it will add files to the annex.

Don't like that this could break workflows, but it's necessary in order for
any pointer files in the repo to be handled by git-annex.

10 years agorefactor
Joey Hess [Fri, 4 Dec 2015 21:18:26 +0000 (17:18 -0400)]
refactor

10 years agocomments
Joey Hess [Fri, 4 Dec 2015 20:46:00 +0000 (16:46 -0400)]
comments

10 years agodon't let git-annex direct be run in a v6 repo
Joey Hess [Fri, 4 Dec 2015 20:29:27 +0000 (16:29 -0400)]
don't let git-annex direct be run in a v6 repo

10 years agoadd v6; keep v5 working for now and manual upgrade
Joey Hess [Fri, 4 Dec 2015 20:14:48 +0000 (16:14 -0400)]
add v6; keep v5 working for now and manual upgrade

Since all places where a repo is used in direct mode need to have git-annex
upgraded before the repo can safely be converted to v6, the upgrade needs
to be manual for now.

I suppose that at some point I'll want to drop all the direct mode support
code. At that point, will stop supporting v5, and will need to auto-upgrade
any remaining v5 repos. If possible, I'd like to carry the direct mode
support for say, a year or so, to give people plenty of time to upgrade and
avoid disruption.

10 years agoauto-configure filter.annex.smudge and clean on init
Joey Hess [Fri, 4 Dec 2015 20:14:11 +0000 (16:14 -0400)]
auto-configure filter.annex.smudge and clean on init

10 years agomerge clean into smudge command
Joey Hess [Fri, 4 Dec 2015 19:30:06 +0000 (15:30 -0400)]
merge clean into smudge command

The git filter config can be used to map the single git-annex command to
the 2 actions, and this avoids "git annex clean" being used for this thing,
it might have a better use for that name later.

10 years agoavoid unnecessary reading of git-annex branch data when matching on annex.largefiles
Joey Hess [Fri, 4 Dec 2015 18:57:28 +0000 (14:57 -0400)]
avoid unnecessary reading of git-annex branch data when matching on annex.largefiles

This makes git annex clean not look at the git-annex branch at all,
and so speeds it up by 50% or more.

10 years agoclean filter should update location log when adding new content to annex
Joey Hess [Fri, 4 Dec 2015 18:20:32 +0000 (14:20 -0400)]
clean filter should update location log when adding new content to annex

10 years agoavoid commit and messages for smudge filter
Joey Hess [Fri, 4 Dec 2015 18:20:22 +0000 (14:20 -0400)]
avoid commit and messages for smudge filter

10 years agoannex.largefiles support for clean filter
Joey Hess [Fri, 4 Dec 2015 18:10:18 +0000 (14:10 -0400)]
annex.largefiles support for clean filter

10 years agosmudge filter working
Joey Hess [Fri, 4 Dec 2015 18:03:10 +0000 (14:03 -0400)]
smudge filter working

10 years agobasic clean filter working
Joey Hess [Fri, 4 Dec 2015 17:39:14 +0000 (13:39 -0400)]
basic clean filter working

10 years ago(no commit message)
mellon85@e4812de7355433a8e232ce8ca4c231092d9afebb [Fri, 4 Dec 2015 17:15:34 +0000 (17:15 +0000)]

10 years ago(no commit message)
mellon85@e4812de7355433a8e232ce8ca4c231092d9afebb [Fri, 4 Dec 2015 17:11:45 +0000 (17:11 +0000)]

10 years agoskeleton smudge/clean filters
Joey Hess [Fri, 4 Dec 2015 17:02:56 +0000 (13:02 -0400)]
skeleton smudge/clean filters

10 years ago(no commit message)
sts [Fri, 4 Dec 2015 12:57:59 +0000 (12:57 +0000)]

10 years agoAdded a comment: Again, difficult to tell
OlivierBerger [Fri, 4 Dec 2015 12:24:07 +0000 (12:24 +0000)]
Added a comment: Again, difficult to tell