Commit graph

24718 commits

Author SHA1 Message Date
Joey Hess
3af29b3ba9
When annex.thin is set, allow hard links to be made between executable work tree files and annex objects.
This is safe, because while the annex object ends up executable,
there were already at least two other cases where it ended up executable:

1. git add an an executable file
2. chmod +x of a a non-executable worktree file that was hard linked to the
   annex object

After copy/hard link, it always fixes up the permissions to match the mode
of the worktree file, so when an executable annex object gets hard linked
to a non-executable worktree file, its execute bit gets removed.

Commit b7c8bf5274 already *said* it would do
this; I suspect the line of code I've removed was included in that commit
accidentially.

Also improves annex.thin documentation.

This commit was sponsored by Boyd Stephen Smith Jr. on Patreon.
2018-10-26 13:51:43 -04:00
Joey Hess
c7885491b2
clarifications 2018-10-26 13:51:15 -04:00
Joey Hess
2e6aff74c2
response 2018-10-26 13:44:55 -04:00
michael.hanke@c60e12358aa3fc6060531bdead1f530ac4d582ec
30a4e63f2a removed 2018-10-26 17:26:37 +00:00
michael.hanke@c60e12358aa3fc6060531bdead1f530ac4d582ec
45fd9057ca Added a comment: Awesome! 2018-10-26 17:13:48 +00:00
michael.hanke@c60e12358aa3fc6060531bdead1f530ac4d582ec
b39b4e7261 Added a comment: Awesome! 2018-10-26 17:13:21 +00:00
Joey Hess
e7e9c5744f
followup 2018-10-26 13:12:06 -04:00
Joey Hess
361740a112
close bug report, open todo item 2018-10-26 13:03:18 -04:00
Joey Hess
3db20b39f2
update 2018-10-26 12:28:43 -04:00
Joey Hess
9488a53023
update docs 2018-10-26 12:19:44 -04:00
Ilya_Shlyakhter
7f60776bd8 Added a comment: stable vs unstable keys 2018-10-26 15:58:26 +00:00
Ilya_Shlyakhter
3409eb4273 Added a comment 2018-10-26 15:27:51 +00:00
CandyAngel
ed0e3fc43c Added a comment 2018-10-26 11:35:19 +00:00
EskildHustvedt
44c27e4e18 Added a comment: v7 2018-10-26 09:33:10 +00:00
Joey Hess
636f4a68a9
doc update 2018-10-25 18:56:14 -04:00
Joey Hess
b996b38b4f
fix autoupgrade from v6 to go to v7, not v5
v3 and v4 still autoupgrade to v5

And a few more upgrade doc updates.
2018-10-25 18:40:04 -04:00
Joey Hess
234842a347
v7
Install new git hooks in this version.

This does beg the question of what to do if git later gets eg a
post-smudge hook, that could run git-annex smudge --update. I think the
thing to do in that case would be to make git-annex smudge --update
install the new hooks. That way, as the user uses git-annex, the hook
would be created pretty quickly and without needing any extra syscalls
except for when git-annex smudge --update is called.

I considered doing something like that for installation of the
post-checkout and post-merge hooks, which would have avoided the need
for v7. But the only place it was cheap to do it would be in git-annex smudge
which could cheaply notice that smudge.log didn't exist yet and so know
the hooks needed to be installed. But since smudge used to populate pointer
files, it would be quite surprising if a single git checkout/merge failed
to update the work tree, and so that idea didn't work out.

The other reason for v7 is psychological -- users don't need to worry
about whether they might be running an old version of git-annex that
doesn't support their v7 repository very well. And bug reports about
"v6" have gotten a bit of a bad association in my head since they often
hit one of the known limitations and didn't realize it was experimental.

newtyped RepoVersion Int to avoid needing 2 comparisons in
versionSupportsUnlockedPointers etc. Also it's just nicer.

This commit was sponsored by John Pellman on Patreon.
2018-10-25 18:24:23 -04:00
pigmonkey
c6d12da6d6 Added a comment 2018-10-25 21:54:18 +00:00
Joey Hess
6ceeb4bae7
Merge branch 'delaysmudge' into v7 2018-10-25 17:01:14 -04:00
marvin@3296bf3c446430c3b2ebc32b5c784ee976620847
accc753eaf Added a comment 2018-10-25 21:00:32 +00:00
Joey Hess
fd56b83bb3
Merge branch 'master' of ssh://git-annex.branchable.com 2018-10-25 16:52:16 -04:00
Joey Hess
dd5611b737
devblog 2018-10-25 16:51:52 -04:00
Joey Hess
917a2c6095
defer updating unlocked files until after smudge filter
The smuge filter no longer provides git with annexed file content, to
avoid a git memory leak, and because that did not honor annex.thin.

git annex smudge --update has to be run after a checkout to update
unlocked files in the working tree with annexed file contents.

No hooks yet to run it.

This commit was sponsored by Nick Piper on Patreon.
2018-10-25 15:08:20 -04:00
anarcat
73bcd7fdd4 add workaround 2018-10-25 17:48:07 +00:00
anarcat
2243d62d05 issues with reinject comparable with import 2018-10-25 17:36:40 +00:00
anarcat
c12e2bcf8b Added a comment: try the --known argument 2018-10-25 17:30:30 +00:00
marvin@3296bf3c446430c3b2ebc32b5c784ee976620847
03e375fc65 Added a comment 2018-10-25 10:23:50 +00:00
marvin@3296bf3c446430c3b2ebc32b5c784ee976620847
af3ae1d3a8 2018-10-25 07:50:20 +00:00
marvin@3296bf3c446430c3b2ebc32b5c784ee976620847
720accb35c 2018-10-25 07:49:18 +00:00
Ilya_Shlyakhter
6d695f51cf added bug - creating git-annex-move not using parallelism? 2018-10-24 18:32:21 +00:00
Ilya_Shlyakhter
2ffa54ea71 added report of a multithreading-related bug with git-annex-drop 2018-10-24 17:08:38 +00:00
Ilya_Shlyakhter
eb5a738301 comment about creating named pipes as arguments 2018-10-24 16:36:32 +00:00
Ilya_Shlyakhter
859509fbb3 Added a comment 2018-10-24 16:01:53 +00:00
disteph@02005197c6b0e3d92255823d62c08dbe6d7a4d52
cbe8af4d2b Added a comment 2018-10-24 11:42:15 +00:00
seantparsons
9505cd52be 2018-10-23 20:19:55 +00:00
yarikoptic
e7877cce84 Added a comment 2018-10-23 03:04:49 +00:00
Joey Hess
94aa0e2f64
fix strange test failure
It was trying to git annex adjust when in a direct mode repo, and that
of course fails. What I don't understand though, is how the test suite
managed to work before, when it was clearly checking the wrong thing.
Since the right way to fix it was obvious, I have not bisected.

This work is supported by the NIH-funded NICEMAN (ReproNim TR&D3) project.
2018-10-22 16:51:09 -04:00
Joey Hess
6ee660f33d
Merge branch 'master' of ssh://git-annex.branchable.com 2018-10-22 16:30:18 -04:00
Joey Hess
e72c11164b
devblog 2018-10-22 16:26:45 -04:00
Joey Hess
6bd67d4d46
cherry-pick too 2018-10-22 16:24:14 -04:00
yarikoptic
0e7c2655d9 Added a comment 2018-10-22 20:07:38 +00:00
Joey Hess
ede54b93ea
Merge branch 'master' of ssh://git-annex.branchable.com 2018-10-22 15:56:01 -04:00
Joey Hess
08b7ac6643
followup 2018-10-22 15:55:51 -04:00
Joey Hess
9fdd91816d
followup 2018-10-22 15:53:13 -04:00
Ilya_Shlyakhter
06007d795d Added a comment 2018-10-22 19:22:30 +00:00
yarikoptic
1cfd2c2b96 initial report on FTBS 2018-10-22 18:20:14 +00:00
yarikoptic
8a9d505409 Added a comment: stalling - also with =false 2018-10-22 17:34:28 +00:00
Joey Hess
ba0bbced51
source git-annex-install so it it can add git-annex to PATH
This commit was sponsored by Jack Hill on Patreon.
2018-10-22 13:22:10 -04:00
Joey Hess
ff9ba1f4d3
improve response 2018-10-22 13:10:17 -04:00
Joey Hess
41d6966747
followup 2018-10-22 13:07:40 -04:00
Joey Hess
d6b2468b4c
Merge branch 'master' of ssh://git-annex.branchable.com 2018-10-22 13:01:06 -04:00
Joey Hess
4ba9c6608e
add for later 2018-10-22 13:00:42 -04:00
Joey Hess
c24e255de1
Fix concurrency bug that occurred on the first download from an exporttree remote
Block other threads while the export database is being constructed (or
updated) by the first thread to try to access it.

This work is supported by the NIH-funded NICEMAN (ReproNim TR&D3) project.
2018-10-22 12:59:10 -04:00
Joey Hess
fc26fd059b
ugh 2018-10-22 12:39:36 -04:00
Joey Hess
3286e68063
analysis 2018-10-22 12:39:31 -04:00
Joey Hess
5012f07630
followup 2018-10-22 12:34:26 -04:00
Ilya_Shlyakhter
4527b475ce added notes on supporting external 2018-10-22 15:45:04 +00:00
Joey Hess
8a7fb2e2d8
plans 2018-10-22 06:16:01 -04:00
anarcat
7a3650fac7 a possible new and faster hash backend 2018-10-22 01:56:22 +00:00
branchable@bafd175a4b99afd6ed72501042e364ebd3e0c45e
1728d59a2b 2018-10-21 23:06:33 +00:00
branchable@bafd175a4b99afd6ed72501042e364ebd3e0c45e
8d9680c662 2018-10-21 22:52:54 +00:00
Joey Hess
a85193f600
Merge branch 'master' of ssh://git-annex.branchable.com 2018-10-20 14:23:17 -04:00
Joey Hess
4a6ebb1034
make sync update adjusted branch to hide/unhide
This completes initial support for --hide-missing, although the
assistant still needs to be updated and it perhaps needs to be sped up,
and maybe there needs to be a way for git-annex get to operate on
missing files. Opened some more todos for those things.

This commit was sponsored by Henrik Riomar.
2018-10-20 14:22:28 -04:00
Joey Hess
5a39b5a012
new tip
(Still need to make git annex sync --content update the adjusted branch
to expose files it downloaded, which this relies on.)

This commit was sponsored by Ewen McNeill on Patreon.
2018-10-20 13:55:15 -04:00
Chris
d27b8f0b89 Added a comment 2018-10-20 08:09:41 +00:00
Joey Hess
3180fa6fd6
Merge branch 'master' of ssh://git-annex.branchable.com 2018-10-19 17:57:30 -04:00
Joey Hess
d3e3fcb8fc
devblog 2018-10-19 17:56:53 -04:00
Joey Hess
4a788fbb3b
sync --content now supports --hide-missing adjusted branches
This relies on git ls-files --with-tree, which I'm using in a way that
its man page does not document. Hm. I emailed the git list to try to get
the docs improved, but at least the git test suite does test the same
kind of use case I'm using here.

Performance impact when not in an adjusted branch is limited to some
additional MVar accesses, and a single git call to determine the name of
the current branch. So very minimal.

When in an adjusted branch, the performance impact is
in Annex.WorkTree.lookupFile, which starts doing an equal amount of work
for files that didn't exist as it already did for files that were
unlocked.

This commit was sponsored by Jochen Bartl on Patreon.
2018-10-19 17:51:25 -04:00
Ilya_Shlyakhter
c742cc41d1 quoted markdown asterisks 2018-10-19 20:41:52 +00:00
Ilya_Shlyakhter
01f7721d56 added suggestion to preserve file extensions in WORM and URL keys 2018-10-19 20:28:12 +00:00
Ilya_Shlyakhter
43a8c564a0 Added a comment 2018-10-19 17:54:49 +00:00
Ilya_Shlyakhter
97aaf38a3c Added a comment 2018-10-19 15:52:22 +00:00
andrey_utkin@49e37627b3060c40292113d73d7ffbf317233e62
c94e62cab5 Added a comment 2018-10-18 23:34:27 +00:00
andrey_utkin@49e37627b3060c40292113d73d7ffbf317233e62
82040ae2aa Added a comment 2018-10-18 20:18:01 +00:00
Joey Hess
5ddfd4f524
response 2018-10-18 15:52:48 -04:00
Joey Hess
bd72dfeaa1
Merge branch 'master' of ssh://git-annex.branchable.com 2018-10-18 15:36:48 -04:00
Joey Hess
d662e45424
devblog 2018-10-18 15:36:06 -04:00
Joey Hess
24838547e2
adjust --hide-missing
* At long last there's a way to hide annexed files whose content
  is missing from the working tree: git-annex adjust --hide-missing
* When already in an adjusted branch, running git-annex adjust
  again will update the branch as needed. This is mostly
  useful with --hide-missing to hide/unhide files after their content
  has been dropped or received.

Still needs integration with sync and the assistant, and not as fast as it
could be, but already usable.

This commit was sponsored by Ethan Aubin.
2018-10-18 15:32:42 -04:00
g@aaed65f19d6c3a2a18c33da828e66c7bb915e65a
435108a688 Added a comment: workaround: setting LC_ALL=C 2018-10-18 08:55:19 +00:00
disteph@02005197c6b0e3d92255823d62c08dbe6d7a4d52
f8aa46aa0d Added a comment 2018-10-18 08:25:35 +00:00
ewen
177a8f9716 Added a comment: Synology NAS 6.2.1-23824 2018-10-18 00:00:34 +00:00
Gus
bdcaac3eaa Added a comment: Thanks 2018-10-17 22:46:36 +00:00
Gus
7cb611de3e Added a comment: Thanks 2018-10-17 22:34:20 +00:00
andrey_utkin@49e37627b3060c40292113d73d7ffbf317233e62
474a9d7258 Added a comment 2018-10-17 22:07:15 +00:00
andrey_utkin@49e37627b3060c40292113d73d7ffbf317233e62
9f740c4613 2018-10-17 21:41:10 +00:00
Joey Hess
7625cc58ae
Merge branch 'master' of ssh://git-annex.branchable.com 2018-10-17 16:32:21 -04:00
Joey Hess
c797655712
devblog 2018-10-17 16:31:28 -04:00
erewhon_smith@6671dff14d578cb6d55a3ca285f2c54151b69f60
8c22c81b48 2018-10-17 18:50:34 +00:00
erewhon_smith@6671dff14d578cb6d55a3ca285f2c54151b69f60
a2326c3b1f removed 2018-10-17 18:47:00 +00:00
erewhon_smith@6671dff14d578cb6d55a3ca285f2c54151b69f60
3b064e386f Added a comment: comment 2 2018-10-17 18:46:17 +00:00
erewhon_smith@6671dff14d578cb6d55a3ca285f2c54151b69f60
bfa24ea1f3 Added a comment 2018-10-17 18:45:59 +00:00
Joey Hess
fc7fe2b19d
more thoughts 2018-10-17 13:26:54 -04:00
Joey Hess
b2bafdb2fc
v6: Fix database inconsistency
That could cause git-annex to get confused about whether a locked file's
content was present, when the object file got touched.

Unfortunately this means more work sometimes when annex.thin is set,
since it has to checksum the file to tell if it's still got the right
content.

Had to suppress output when inAnnex calls isUnmodified, otherwise
"(checksum...)" would be printed in places it ought not to be,
eg "git annex get" could turn out not need to get anything, and
so only display that.

This commit was sponsored by Ole-Morten Duesund on Patreon.
2018-10-16 13:51:37 -04:00
Joey Hess
6498643caf
bug report 2018-10-16 11:41:12 -04:00
Joey Hess
588db2058f
Merge branch 'master' of ssh://git-annex.branchable.com 2018-10-16 11:29:44 -04:00
Joey Hess
3cc273990c
rename to avoid render as html 2018-10-16 11:23:31 -04:00
Joey Hess
11369257de
push back on random conversation in release announcements 2018-10-16 11:17:24 -04:00
Chris
832365809e Added a comment 2018-10-16 15:15:17 +00:00
CandyAngel
0c32f29e21 Added a comment 2018-10-16 15:05:19 +00:00
Joey Hess
8211f6bb87
remove addition
I understand and sympathize with why this was added here, but the fact
is that this kind of warning is clutter that is going to make it harder
to understand this man page overall; this is not the place to document
internal implementation details of the format of URL keys and more than
it would be the place to document how WORM keys mangle and truncate
filenames, or how the extension of a SHAnE key is chosen. I see that
it did get documented better in backends.mdwn, which is a good place
to document it.

The chance that someone is going to have the same misunderstanding and
happen to see this warning does not justify confusing everyone else
with a warning that is really out of place in this documentation.
2018-10-16 11:00:22 -04:00