Commit graph

1175 commits

Author SHA1 Message Date
Joey Hess
facf488de5
two more services with multiple special remotes 2020-03-04 22:42:33 -04:00
Joey Hess
5995eba531
improve special remotes list
In several cases, there's an old, maybe unmaintained special remote,
and rclone also supports the service. I don't know which is better,
so I added tips pages for these, listing both possibilies, so users can
fill in the details.

Added some things listed in special_remotes/rclone that were not
in the cloud provider list, so users will see it supports those.
But, omitted S3 and webdav, since it's probably better for users to use
what's built into git-annex than going via rclone.

The rclone list is out of date apparently, as rclone.org has more,
so I added a note at the bottom for users to check.

This commit was sponsored by Ethan Aubin.
2020-03-04 22:27:56 -04:00
Joey Hess
87356a8f32
response 2020-02-17 13:04:18 -04:00
max
206d2e6bfb Added a comment: adding support for additional metadata tools? 2020-02-10 04:45:56 +00:00
breck7@4bbace32c18ebb98fc730d56c6ed76b7bcc0798e
cec1db336e Added a comment: Thank you 2020-01-30 15:15:27 +00:00
yarikoptic
803722bb2d Added a comment: preferred way to automate population of the cache upon get 2020-01-13 19:01:11 +00:00
AdamSpiers
5aef27d825 add missing backtick 2020-01-13 00:25:27 +00:00
anarcat
6a38d94ceb fix a transcription error - to disable a remote, we set ignore to true, not false! 2020-01-08 15:30:51 +00:00
undral
0585d12ca4 removed 2020-01-08 00:17:47 +00:00
undral
9fe3f9e08f Added a comment: hi 2020-01-08 00:17:14 +00:00
Joey Hess
d0f3b01c31
update comments to point to conversion docs
want to avoid use of -c annex.largefiles..
2020-01-01 14:38:40 -04:00
Joey Hess
503788238c
add --force-annex/--force-git
options make it easier to override annex.largefiles configuration
(and potentially safer as it avoids bugs like the smudge bug fixed
in the last release)

Deleted some old comments that were posted to the man page discussing such
options.

Updated docs that used -c annex.largefiles to use the options.

Note that addSmallOverridden was needed to avoid the clean filter running
on the file. It would be possible to make addFile also update the index
directly, rather than going via git add. However, it was not necessary,
and I want to avoid breaking on some edge case, particularly if the code in
addSmallOverridden has some oversight.

Also, when annex.addunlocked is set and annex.largefiles does not match a file,
git annex add --force-large works, but git status will then show the file
as added, with a unstaged modification. The unstaged modification adds the
file to git. This is identical behavior to using -c annex.largefiles=nothing
when annex.addunlocked is set. This does not prevent committing what was
intended to be added. I have not gotten to the bottom of why git thinks
the file is modified and runs it through the clean filter in this case.
2020-01-01 14:03:06 -04:00
Joey Hess
37467a008f
annex.addunlocked expressions
* annex.addunlocked can be set to an expression with the same format used by
  annex.largefiles, in case you want to default to unlocking some files but
  not others.
* annex.addunlocked can be configured by git-annex config.

Added a git-annex-matching-expression man page, broken out from
tips/largefiles.

A tricky consequence of this is that git-annex add --relaxed
honors annex.addunlocked, but an expression might want to know the size
or content of an url, which it's not going to download. I decided it was
better not to fail, and just dummy up some plausible data in that case.

Performance impact should be negligible. The global config is already
loaded for annex.largefiles. The expression only has to be parsed once,
and in the simple true/false case, it should not do any additional work
matching it.
2019-12-20 15:56:25 -04:00
Joey Hess
4acbb40112
git-annex config annex.largefiles
annex.largefiles can be configured by git-annex config, to more easily set
a default that will also be used by clones, without needing to shoehorn the
expression into the gitattributes file. The git config and gitattributes
override that.

Whenever something is added to git-annex config, we have to consider what
happens if a user puts a purposfully bad value in there. Or, if a new
git-annex adds some new value that an old git-annex can't parse.
In this case, a global annex.largefiles that can't be parsed currently
makes an error be thrown. That might not be ideal, but the gitattribute
behaves the same, and is almost equally repo-global.

Performance notes:

git-annex add and addurl construct a matcher once
and uses it for every file, so the added time penalty for reading the global
config log is minor. If the gitattributes annex.largefiles were deprecated,
git-annex add would get around 2% faster (excluding hashing), because
looking that up for each file is not fast. So this new way of setting
it is progress toward speeding up add.

git-annex smudge does need to load the log every time. As well as checking
the git attribute. Not ideal. Setting annex.gitaddtoannex=false avoids
both overheads.
2019-12-20 13:01:41 -04:00
MichaelC
df7bf60998 Added a comment: Does android adb special remote support MTP? 2019-12-10 21:23:31 +00:00
michael.clifford.com@7ca464bc0ba25fd5f2922deb8f531668727a66fb
80b0c9b514 removed 2019-12-10 21:02:23 +00:00
michael.clifford.com@7ca464bc0ba25fd5f2922deb8f531668727a66fb
3c4053e455 Added a comment: android special remote via mtp supported? 2019-12-10 21:01:53 +00:00
Joey Hess
5877de5e80
git-lfs: remember urls, and autoenable remotes using known urls
* git-lfs: The url provided to initremote/enableremote will now be
  stored in the git-annex branch, allowing enableremote to be used without
  an url. initremote --sameas can be used to add additional urls.
* git-lfs: When there's a git remote with an url that's known to be
  used for git-lfs, automatically enable the special remote.
2019-11-18 16:09:09 -04:00
Joey Hess
31a5b58b2c
documentation for making git add only annex when configured by annex.largefiles
Code change should be trvial, but not yet implemented. This
significantly complicated the task of documenting how git-annex works.

I'm not sure how useful the annex.gitaddtoannex confguration is after
this change; seems that if a user has an annex.largefiles they will want
it applied consistently. But the last thing I want to hear is more
complaining from users about git add doing something they don't want it
to.

There's a pretty high risk users who got used to the git add behavior
and don't have annex.largefiles configured will miss the NEWS and
complain bitterly about their suddenly bloated repositories. Oh well.

Removed outdated comments about the old behavior to avoid confusion.
I don't know if I've found all the places that griping spread to.
2019-10-24 14:01:54 -04:00
anarcat
b4a9397c4a Added a comment: right! forgot about log -S 2019-10-23 20:16:26 +00:00
anarcat
2755a22c37 update from comments 2019-10-23 20:15:40 +00:00
Joey Hess
a632a16f14
comment 2019-10-21 12:53:04 -04:00
Lukey
c452f01843 Added a comment 2019-10-21 16:27:50 +00:00
anarcat
a2bc387c6b i always have trouble finding this 2019-10-21 15:40:56 +00:00
Joey Hess
37f725a9f7
Merge branch 'master' into sameas 2019-10-11 15:56:00 -04:00
Joey Hess
c0e88b7695
sameas documentation 2019-10-11 14:04:58 -04:00
Joey Hess
3cc23df35b
improve conversion example 2019-10-08 14:17:04 -04:00
Dwk
a9c5a68b65 Added a comment: annexed -> normal git does not work if annexed file was unlocked 2019-10-05 01:45:14 +00:00
Joey Hess
a9f078da43
Merge branch 'master' of ssh://git-annex.branchable.com 2019-09-30 14:21:23 -04:00
Joey Hess
ca0ca6012f
remove -n from example
That was only needed with git-annex before v7. The pre-commit hook no
longer scans for and re-locks typechanged files.
2019-09-30 13:34:26 -04:00
branchable@bafd175a4b99afd6ed72501042e364ebd3e0c45e
04ec673d51 Fix typo and incorrect references to "git annex peer" 2019-09-29 23:34:25 +00:00
branchable@bafd175a4b99afd6ed72501042e364ebd3e0c45e
b45deddbcd Added a comment: Follow-up thought 2019-09-29 22:08:29 +00:00
branchable@bafd175a4b99afd6ed72501042e364ebd3e0c45e
1f28ddf470 Added a comment: Can conversion to/from annexed be made easier? 2019-09-29 22:04:32 +00:00
branchable@bafd175a4b99afd6ed72501042e364ebd3e0c45e
32c6ea563e fix walktrough typo 2019-09-29 21:46:46 +00:00
branchable@bafd175a4b99afd6ed72501042e364ebd3e0c45e
4db7370c4b Added a comment: Issue on openSUSE with Tor's requirement for Python 2.7 2019-09-29 16:41:15 +00:00
branchable@bafd175a4b99afd6ed72501042e364ebd3e0c45e
7192063f84 Improve installation instructions for Magic Wormhole, and mention Python 2 and executable name dependencies 2019-09-29 16:20:21 +00:00
Joey Hess
6ae0a44c64
git-lfs: Added support for http basic auth 2019-09-24 14:46:20 -04:00
tobiasBora
ca89c40656 Added a comment: Download either video and audio 2019-09-23 09:14:29 +00:00
Joey Hess
e347216a69
link 2019-09-16 14:44:56 -04:00
Joey Hess
a53e8e6b55
forum thread as requested 2019-09-16 14:43:10 -04:00
Joey Hess
6e81911d9c
comment 2019-09-16 13:37:38 -04:00
Joey Hess
061231621e
Merge branch 'master' into v7-default 2019-09-10 16:06:43 -04:00
ginquistador@86f226616ead98d2733e249429918f241f928064
95468047d6 Added a comment: Disappointed with git add 2019-09-03 07:30:28 +00:00
Joey Hess
3f0eef4baa
v7 for all repositories
* Default to v7 for new repositories.
* Automatically upgrade v5 repositories to v7.
2019-08-30 14:09:14 -04:00
Joey Hess
20741b1eb4
Automatically convert direct mode repositories to v7 with adjusted unlocked branches
* Automatically convert direct mode repositories to v7 with adjusted
  unlocked branches and set annex.thin.
* init: When run on a crippled filesystem with --version=5,
  will error out, since version 7 is needed for adjusted unlocked branch.
* direct: This command always errors out as direct mode is no longer
  supported.
* indirect: This command has become a deprecated noop.
* proxy: This command is deprecated because it was only needed in direct
  mode. (But it continues to work.)

Also removed mentions of direct mode throughough the documentation.

I have not removed all the direct mode code yet.
2019-08-26 15:05:25 -04:00
Joey Hess
b87ea12b6b
git-annex merge branch
* merge: When run with a branch parameter, merges from that branch.
  This is especially useful when using an adjusted branch, because
  it applies the same adjustment to the branch before merging it.
2019-08-09 13:21:15 -04:00
Joey Hess
fb7d92457f
support using gcrypt with git-lfs special remote 2019-08-05 13:43:45 -04:00
Joey Hess
f5eb28682a
expand 2019-08-04 13:59:24 -04:00
Joey Hess
8460bbcea9
note on git-lfs program 2019-08-04 13:16:59 -04:00
Joey Hess
c5ed11bc3f
documentation for git-lfs special remote 2019-08-04 13:15:47 -04:00
se394@012e89e10cc49919adf6ca062ea68c23230eebe5
390b536436 removed 2019-07-23 18:01:46 +00:00
se394@012e89e10cc49919adf6ca062ea68c23230eebe5
95bfa6e0f5 Added a comment: Exception thrown for runshell 2019-07-23 18:01:31 +00:00
se394@012e89e10cc49919adf6ca062ea68c23230eebe5
88b51c3a45 Added a comment: Exception thrown for runshell 2019-07-23 18:01:22 +00:00
Joey Hess
924e5af6b9
change a few last v6 references to v7
Since v6 is not a usable repo version any longer, it's confusing to have
documentation that refers to it.

This commit was sponsored by Peter on Patreon.
2019-07-17 11:44:57 -04:00
yarikoptic
ec3c16b517 Added a comment: FTR: a dedicated issue on CoW across subvolumes 2019-07-08 19:05:45 +00:00
yarikoptic
537c280e75 removed 2019-07-08 19:05:00 +00:00
yarikoptic
ec62d07883 Added a comment: FTR: a dedicated issue on CoW across subvolumes 2019-07-08 19:04:03 +00:00
Joey Hess
1871295765
rename annex.security.allowed-http-addresses
Renamed annex.security.allowed-http-addresses to
annex.security.allowed-ip-addresses because it is not really specific to
the http protocol, also limiting eg, git-annex's use of ftp and via
youtube-dl, several other protocols.

The old name for the config will still work.

If both old and new name are set, the new name will win.
2019-05-30 12:43:40 -04:00
Joey Hess
d98dc13345
update for preferred content 2019-05-21 14:56:45 -04:00
Joey Hess
700a3f2787
Merge branch 'master' into import-from-s3 2019-05-01 14:30:52 -04:00
Joey Hess
9dd764e6f7
Added mimeencoding= term to annex.largefiles expressions.
* Added mimeencoding= term to annex.largefiles expressions.
  This is probably mostly useful to match non-text files with eg
  "mimeencoding=binary"
* git-annex matchexpression: Added --mimeencoding option.
2019-04-30 12:17:22 -04:00
Joey Hess
48d30d8753
Merge branch 'master' into import-from-s3 2019-04-23 15:34:26 -04:00
Joey Hess
cab28b48af
reorder 2019-04-23 14:45:34 -04:00
yarikoptic
2c61fbf858 Added a comment: indeed a useful use case 2019-04-19 13:26:05 +00:00
Joey Hess
48c2a95efb
simpler setup instructions
This commit was sponsored by Denis Dzyubenko on Patreon.
2019-04-10 12:34:28 -04:00
Joey Hess
1a1a5177fd
add tip for new adb import feature
This commit was sponsored by Jake Vosloo on Patreon.
2019-04-09 17:45:55 -04:00
yarikoptic
94b9c5da92 Added a comment: annex.thin without hardlinks would be useful for non-crippled systems as well 2019-03-25 18:57:37 +00:00
Joey Hess
077efce98b
fix wrong option, followup 2019-03-22 09:51:42 -04:00
Joey Hess
b5d1029b6e
remove unsupported option 2019-03-22 09:46:47 -04:00
Joey Hess
b22d07ba93
comment 2019-03-22 09:32:26 -04:00
gueux
2e4fedf1a4 Added a comment 2019-03-21 22:59:38 +00:00
meribold
5b2caf30ae Added a comment: Re: Best solution to save disk space on exFAT 2019-03-19 14:32:29 +00:00
meribold
8f0117545c Added a comment: Re: Best solution to save disk space on exFAT 2019-03-19 14:22:57 +00:00
meribold
ab725aeb89 Added a comment: Re: Best solution to save disk space on exFAT 2019-03-19 14:14:38 +00:00
sameerds
27c96d9b70 Added a comment: did not work for me 2019-03-16 10:07:09 +00:00
Joey Hess
5dd21116b7
update for deprecation of --tracking option 2019-03-11 14:27:01 -04:00
anarcat
dba0e89b71 Added a comment 2019-03-07 20:15:10 +00:00
yarikoptic
9f908c8856 Added a comment: more details on coreutils cp treatment of reflink 2019-03-06 16:00:35 +00:00
tjbk123@277355c7f00c6df42e960e85caafa4b294872337
b7af89a8b4 Added a comment: Best solution to save disk space on exFAT 2019-03-05 18:23:03 +00:00
CandyAngel
a5d9ab3ad7 Added a comment 2019-02-19 14:13:48 +00:00
chris@a3ac8acdfdc53fa269c7b9bda4306c25b92d6624
5bd190aab2 Added a comment: Files with spaces 2019-02-19 14:04:05 +00:00
madalu
18e060cd11 2019-02-04 14:40:03 +00:00
madalu
b0bf1c40a6 Correct date 2019-01-21 15:42:39 +00:00
colin.brosseau@d444b2b3412af38b85f7b4b340b9c44a412b5698
938ca1c698 Added a comment: NTFS Make it clear that it'll not work with annex.thin 2019-01-03 18:04:58 +00:00
tomi.ollila@7588dbee63d5e035a85167fe207afb49287f9d1a
176f65fb8f Added a comment: git config remote.origin.annex-ignore true 2018-12-26 20:33:36 +00:00
Joey Hess
7a2d257159
comment 2018-12-03 13:35:23 -04:00
anarcat
f5ec2f074d note git-annex not supported by gitlab anymore 2018-11-30 21:27:03 +00:00
leni536
7285ffef62 2018-11-28 09:02:12 +00:00
yarikoptic
acb4bcf2db Added a comment 2018-11-21 19:56:45 +00:00
Mowgli
98af4f51d1 Added a comment: reflink and subvolume 2018-11-21 19:41:30 +00:00
Mowgli
9f3dfeb9a1 removed 2018-11-21 19:40:04 +00:00
Mowgli
a23d982153 Added a comment: reflink and subvolume 2018-11-21 19:38:56 +00:00
yarikoptic
beffd92109 Added a comment 2018-11-21 19:21:48 +00:00
Mowgli
8b76e284a8 Added a comment: reflink and subvolume 2018-11-21 19:01:11 +00:00
metst13@1d16544ec52801db7efb2895d3dc7a4458b8eb45
7bca7542d6 Added a comment 2018-11-06 16:10:11 +00:00
metst13@1d16544ec52801db7efb2895d3dc7a4458b8eb45
1803ba1bcc Added a comment: clone to the server 2018-11-06 14:58:39 +00:00
anarcat
6d954cc132 upload to the test collection, giving users an idea of how to change collections as well as forcing people to think before they upload 2018-11-05 16:02:23 +00:00
CandyAngel
b9063f94fc Added a comment 2018-10-27 22:33:21 +00:00
Joey Hess
6fd37fb016
Merge branch 'v7' 2018-10-26 13:52:09 -04:00
Joey Hess
9488a53023
update docs 2018-10-26 12:19:44 -04:00
CandyAngel
ed0e3fc43c Added a comment 2018-10-26 11:35:19 +00:00
Joey Hess
636f4a68a9
doc update 2018-10-25 18:56:14 -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
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
Joey Hess
b72f1e1b48
update android docs for termux
This commit was sponsored by John Pellman on Patreon.
2018-10-13 12:11:47 -04:00
Joey Hess
f430fda73b
move comment 2018-10-11 13:35:13 -04:00
Joey Hess
c5b6c55afc
Merge branch 'master' of ssh://git-annex.branchable.com 2018-10-11 13:33:14 -04:00
Joey Hess
0240775f32
adding arm64 build, and improved termux installation process
* Added arm64 Linux standalone build. (No autobuilder yet.)
* Improved termux installation process.

Added git-annex-install.sh script to avoid user needing to type as much in
termux. The scope of this script is limited; runshell handles the rest.

Runshell runs termux-fix-shebang on the shell scripts. The problem is
the bundled bin/sh script, deleting that script also works, but then the
others probably use the system Android /bin/sh, which could be old or
broken or not posix or whatever. Using termux sh to run the scripts is
better.

This commit was sponsored by Eric Drechsel on Patreon.
2018-10-11 13:32:00 -04:00
branchable@bafd175a4b99afd6ed72501042e364ebd3e0c45e
897e5ba57d Added a comment: Works now!! 2018-10-11 16:09:00 +00:00
Joey Hess
3b8ce5a89a
update 2018-10-10 18:16:07 -04:00
branchable@bafd175a4b99afd6ed72501042e364ebd3e0c45e
87206a985a Added a comment: aarch64 still broken, please help 2018-10-09 09:17:11 +00:00
Joey Hess
9d7fe7d1f2
response 2018-10-08 12:10:02 -04:00
anarcat
2bbe1a8faf Added a comment: asked upstream 2018-10-07 18:07:05 +00:00
Teyras
8317223b98 Added a comment: gcrypt support 2018-10-06 12:14:45 +00:00
madalu
c38656d70e Fix typo 2018-09-22 22:46:20 +00:00
madalu
d61b22202c Warning about upcoming shutdown of webdav access to box.com 2018-09-22 22:45:45 +00:00
anarcat
f396676dba link to webdav more explicitely 2018-09-06 01:01:04 +00:00
Joey Hess
10138056dc
v6: avoid accidental conversion when annex.largefiles is not configured
v6: When annex.largefiles is not configured for a file, running git add or
git commit, or otherwise using git to stage a file will add it to the annex
if the file was in the annex before, and to git otherwise. This is to avoid
accidental conversion.

Note that git-annex add's behavior has not changed, for reasons explained
in the added comment.

Performance: No added overhead when annex.largefiles is configured.
When not configured, there is an added call to catObjectMetaData,
which involves a round trip through git cat-file --batch.
However, the earlier catKeyFile primes the cache for it.

This commit was supported by the NSF-funded DataLad project.
2018-08-27 14:51:10 -04:00
Joey Hess
35e1697377
expand 2018-08-17 10:48:18 -04:00
Joey Hess
82cfcfc838
better index file refresh method
Use git update-index --refresh, since it's a little bit more
efficient and the user can be told to run it if a locked index prevents
git-annex from running it.

This also fixes the problem where an annexed file was deleted in the index
and a get of another file that uses the same key caused the index update to
add back the deleted file. update-index will not add back the deleted file.

Documented in tips/unlocked_files.mdwn the gotcha that the index update
may conflict with other operations. I can't see any way to possibly avoid
that conflict.

One new todo about a race that causes a modification to be accidentially
staged.

Note that the assistant only flushes the git command queue when it
commits a modification. I have not tested the assistant with v6 unlocked
files, but assume most users of the assistant won't care if the index
shows a file as modified for a while.

This commit was supported by the NSF-funded DataLad project.
2018-08-16 14:16:24 -04:00
Joey Hess
63a81cd20a
response 2018-08-09 15:49:36 -04:00
Joey Hess
7b9762b6af
document converting from git to annex and back 2018-08-09 15:06:51 -04:00
Joey Hess
c5d93650c9
prevent fetch/merge/push to cache 2018-08-03 14:10:05 -04:00
yarikoptic
214a6b7742 Added a comment: could we just make it "avoidable"? 2018-08-03 17:54:01 +00:00
Joey Hess
38190c6ca2
response 2018-08-03 13:28:11 -04:00
Joey Hess
1a02fc1159
Fix wrong sorting of remotes when using -J
It was sorting by uuid, rather than cost!

Avoid future bugs of this kind by changing the Ord to primarily compare
by cost, with uuid only used when the cost is the same.

This commit was supported by the NSF-funded DataLad project.
2018-08-03 13:10:50 -04:00
yarikoptic
8de71a743c Added a comment: re: annex merge cache 2018-08-02 18:49:51 +00:00
Joey Hess
03ac0978d6
response 2018-08-02 14:16:18 -04:00
yarikoptic
5d56429a1e Added a comment: re: annex merge cache 2018-08-02 17:35:22 +00:00
yarikoptic
62b5f4e90f Added a comment: re: parallel and costs 2018-08-02 17:28:46 +00:00
Joey Hess
184cae8172
followup 2018-08-02 13:15:59 -04:00
yarikoptic
05e573e672 Added a comment: could be taken as a feature! but also annex should avoid merging cache git-annex 2018-08-02 14:30:51 +00:00
yarikoptic
7d74517717 Added a comment: is it "safe" to tune? 2018-08-02 13:53:04 +00:00
yarikoptic
7281099574 Added a comment: is not going from cache with parallel get e.g. -J 2 2018-08-02 13:33:09 +00:00
Joey Hess
5b1c1b1490
Merge branch 'master' of ssh://git-annex.branchable.com 2018-08-01 15:34:53 -04:00
Joey Hess
6e6c9cc6d3
Added --accessedwithin matching option.
Useful for dropping old objects from cache repositories.

But also, quite a genrally useful thing to have..

Rather than imitiating find's -atime and other options, all of which are
pretty horrible to use, I made this match files accessed within a time
period, using the same duration format used by git-annex schedule and
--limit-time

In passing, changed the --limit-time option parser to parse the
duration, instead of having it later throw an error.

This commit was supported by the NSF-funded DataLad project.
2018-08-01 15:34:03 -04:00
Joey Hess
fd5a392006
cache remotes via annex-speculate-present
Added remote.name.annex-speculate-present config that can be used to
make cache remotes.

Implemented it in Remote.keyPossibilities, which is used by the
get/move/copy/mirror commands, and nothing else. This way, things like
whereis will not show content that's speculatively present.

The assistant and sync --content were not using Remote.keyPossibilities,
and were changed to use it.

The efficiency hit should be small; Remote.keyPossibilities is only
used before transferring a file, which is the expensive operation.
And, it's only doing one lookup of the remoteList and a very cheap
filter over it.

Note that, git-annex still updates the location log when copying content
to a remote with annex-speculate-present set. In this case, the location
tracking will indicate that content is present in the remote. This may
not be wanted for caches, or may not be a real problem for them. TBD.

This commit was supported by the NSF-funded DataLad project.
2018-08-01 14:28:05 -04:00
msloco@dab095e2e54192078b3eedcd000f7d838a169f5b
2ca412754a Added a comment: samee here 2018-07-31 22:21:48 +00:00
branchable@bafd175a4b99afd6ed72501042e364ebd3e0c45e
46e86cc5b0 Added a comment: still broken on aarch64 2018-07-29 08:48:22 +00:00
Joey Hess
081f8e57c6
Support working trees set up by git-worktree.
Support working trees set up by git-worktree, by setting up some symlinks
such that git-annex links work right.

Also improved support for repositories created with --separate-git-dir.
At least recent git makes a .git file for those (older may have used a
symlink?), so that also needs to be converted to a symlink.

This commit was sponsored by Nick Piper on Patreon.
2018-07-18 14:27:26 -04:00
Joey Hess
49cc94f61f
add docs about p2p --pair being broken in old versions 2018-07-05 11:52:52 -04:00
Joey Hess
096f2261a7
added an example transcript 2018-07-04 15:26:07 -04:00
Joey Hess
ba0745b5c2
S3: fix documentation of publicurl
5f0f063a7a documented it as being
configured automatically, but the code never did that. Rather than try
to hard-code whatever urls amazon  uses for its buckets, it seems better
to ask the user to find the url and set it.
2018-07-02 12:30:39 -04:00
Joey Hess
4f3b9db725
Merge branch 'master' of ssh://git-annex.branchable.com 2018-06-26 11:09:50 -04:00
CandyAngel
b356b2405c Added a comment 2018-06-26 10:38:21 +00:00
branchable@bafd175a4b99afd6ed72501042e364ebd3e0c45e
5162395494 Added a comment: Not working on OnePlus 5T either 2018-06-26 10:32:09 +00:00
Joey Hess
3160cadba3 git-annex version 6.20180626
-----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEKKUAw1IH6rcvbA8l2xLbD/BfjzgFAlstCaQACgkQ2xLbD/Bf
 jzh5nxAAn7D9soTI0ex6AVDDo2CjOyTTDVrIcl2h5XizfuUD3ev5P0TR3BZmzpAb
 MI6uaZ8kxqZ/eGAsBTyH9PsV7QVYIdht9t89ytP4xWyTQiOgjyJeA6PnJl4zVK9z
 Y8Of3mlylaz+97+sndljpsvy/KHENrHI7HHd+qxAu7wKysJxG6fJB7CjremkjaCI
 zAwg3mIy72ZKyuR/8hL9puJN9fdfw1ulkzQR+he007e/HkurPCwgRAOYW/Aa2tpY
 Oigdb9a6/0nl/VnOS8ZyHrSPRrhLH9c4IBmsdC1Xt5NDVmID/sWgD9uPF9dsHSMF
 OM25QdSlJ5cSNg+/XCpmmhC9MjgKkuVNpZ/fWBaHFs6KYgGhtZcAayQdz5AmMS2N
 HTPWB1IxZiV5TQHQpLbdH/q3RfNtRq1G1tc24zpd/zdhzijeTM6D8n4No6LXNq8X
 7U0qcrp9TdLOpBCTf6Jrg/7qFaXddHoEW1e3KrsOmB0hlYHuNxfY4bs0+ROeXGOT
 00koezcbF8kEI0ekoDvJjtVqaUq+608YjJZ5v7dE0vbtTj0KGbl5EHwC9atUluCX
 MHyTDY89uq68g4HIDytL001ZLvE3EUGJc4jh3+OMDzuZSKB5uwJIIky+qIaQu34K
 QJrZuyAIY0sVFV6LUX9nwqTW6Nnx/bB+kZ6k0+gx+Lpf7pUpE+o=
 =kex4
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEKKUAw1IH6rcvbA8l2xLbD/BfjzgFAlsxnX4ACgkQ2xLbD/Bf
 jzjK1xAAnJ58ZxLyTYlCZRcKiR81UHS/Mk6+SDAjRIRbT0SsY+6gSP55XKjrcuOb
 Jatp+6cNNSgk2lBpn37mq+rYIqboFh9moDRK7JSh1mDHCVtIwdARGblFRfuwaWPi
 xHnu+Pj43+SP7OF+8qP8/kDM+js3iMS+0gvBBz8pQN/yJDROXii6u0eONOd7vbER
 iRY9QpJdj5lp3hjaWfXt5iJC0re0eOAY4eUSHPsFIASysShnn33dFPOZ2hbhRKjR
 unQHUVIUE+ehmW3w9qIqn+9v2kca7laGK11cvzYRpmu/9rrvpf+RF1h42S8822dP
 CKHvxDkBGbyqTA+F9/6zpU1i9/ARgHFDpScRcdq7ZJi9FbWabKDklHCsgxwrkdXb
 +FXgb7N5Sa4+eVDNUf4rxldtLPX53nrtZ3IqrGiCWApCvbysNyP5kE0nix02l9z2
 xzY2vlpicx7TOMoO9mZesSFNgRzuFAbbya/zDJrz+xfgSRYXRYg58yTpmhpTFvSI
 h3Fw6+MYvehvRdAweLtoQt2p/UV2MAWrTpNzFoqgf2OCQOiH97ACDHn8Yki9rnQi
 NuMsqv9WOYQs4SaygDZMKemgAxftf3uaXiBW0RzHHwwWnDjHhqsEioOvOhNNyZbz
 U3OjKrH1JZlkNHlIBQD4BsWGLlIct66ZTU3k2OxPEp+mpEG/Xi4=
 =p+cW
 -----END PGP SIGNATURE-----

Merge tag '6.20180626' - previously embargoed security release
2018-06-25 21:56:43 -04:00
bqone@ea19c1433d6c23d05a56fe7b055d92010ab75ffb
89a2c1b220 Added a comment: Not working on OnePlus 6 2018-06-25 15:57:13 +00:00
jared@ce91556d9548d318ec3f690b5f9bc33721256e4d
5f64260ce3 Added a comment: Unable to access public s3 remote without S3 credentials. 2018-06-21 13:47:27 +00:00
anarcat
d889d9666d hashdeep integration 2018-06-18 12:45:32 +00:00
Joey Hess
e62c4543c3
default to not using youtube-dl, for security
Pity, but same reasoning as curl applies to it.

This commit was sponsored by Peter on Patreon.
2018-06-17 14:51:02 -04:00
Joey Hess
28720c795f
limit url downloads to whitelisted schemes
Security fix! Allowing any schemes, particularly file: and
possibly others like scp: allowed file exfiltration by anyone who had
write access to the git repository, since they could add an annexed file
using such an url, or using an url that redirected to such an url,
and wait for the victim to get it into their repository and send them a copy.

* Added annex.security.allowed-url-schemes setting, which defaults
  to only allowing http and https URLs. Note especially that file:/
  is no longer enabled by default.

* Removed annex.web-download-command, since its interface does not allow
  supporting annex.security.allowed-url-schemes across redirects.
  If you used this setting, you may want to instead use annex.web-options
  to pass options to curl.

With annex.web-download-command removed, nearly all url accesses in
git-annex are made via Utility.Url via http-client or curl. http-client
only supports http and https, so no problem there.
(Disabling one and not the other is not implemented.)

Used curl --proto to limit the allowed url schemes.

Note that this will cause git annex fsck --from web to mark files using
a disallowed url scheme as not being present in the web. That seems
acceptable; fsck --from web also does that when a web server is not available.

youtube-dl already disabled file: itself (probably for similar
reasons). The scheme check was also added to youtube-dl urls for
completeness, although that check won't catch any redirects it might
follow. But youtube-dl goes off and does its own thing with other
protocols anyway, so that's fine.

Special remotes that support other domain-specific url schemes are not
affected by this change. In the bittorrent remote, aria2c can still
download magnet: links. The download of the .torrent file is
otherwise now limited by annex.security.allowed-url-schemes.

This does not address any external special remotes that might download
an url themselves. Current thinking is all external special remotes will
need to be audited for this problem, although many of them will use
http libraries that only support http and not curl's menagarie.

The related problem of accessing private localhost and LAN urls is not
addressed by this commit.

This commit was sponsored by Brett Eisenberg on Patreon.
2018-06-16 11:57:50 -04:00
madapeedikakkaran@2c5c8bb4520ebf2526afb49c8dcbcb60fb295973
80917c2958 Added a comment: Termux Error 2018-06-12 11:54:02 +00:00
https://christian.amsuess.com/chrysn
357680620f Added a comment: Platform addendum for "Debugging "No such file or directory"" 2018-05-15 20:29:57 +00:00
https://christian.amsuess.com/chrysn
2b087634ef Added a comment: Debugging "No such file or directory" 2018-05-15 19:57:34 +00:00
https://christian.amsuess.com/chrysn
bbbc1802cd Added a comment: Debugging "No such file or directory" 2018-05-15 19:19:38 +00:00
CandyAngel
6c91ebc2c2 Added a comment 2018-05-15 16:15:32 +00:00
Joey Hess
d39457035b
response 2018-05-15 11:56:45 -04:00
CandyAngel
c467ac1775 Added a comment 2018-05-10 10:23:49 +00:00
Joey Hess
e8ffa8d54b
link to release build 2018-05-09 16:46:17 -04:00
Joey Hess
71f450f677
use proot to support Android 8
runshell: Use proot when running on Android, to work around Android 8's
ill-advised seccomp filtering of system calls, including ones crucial for
reliable thread locking. (This will only work with termux's version of
proot.)

See https://github.com/termux/termux-packages/issues/420#issuecomment-386636938

This commit was sponsored by andrea rota.
2018-05-08 13:55:10 -04:00
Joey Hess
c0b5ada848
response 2018-04-30 16:07:47 -04:00
Joey Hess
07ba2b0b56
Merge branch 'master' of ssh://git-annex.branchable.com 2018-04-30 16:06:01 -04:00
hobbes@b2cacef69071743c3a831e60511062f7e014e52f
3d59fc4252 Added a comment: Bad system call fix 2018-04-30 15:01:09 +00:00
Joey Hess
0cc401dd94
Merge branch 'master' of ssh://git-annex.branchable.com 2018-04-27 18:55:03 -04:00
davicastro
bf6c6fa30c Added a comment: Where does gitolite stores the annex objects contents? 2018-04-27 21:06:42 +00:00
Joey Hess
ca8833b8e1
response 2018-04-27 13:13:50 -04:00
hobbes@b2cacef69071743c3a831e60511062f7e014e52f
8b297e8008 Added a comment: Bad system call 2018-04-26 19:36:45 +00:00
Joey Hess
abbe5fb516
add coreutils to pkg list for ionice 2018-04-25 15:43:20 -04:00
Joey Hess
de491ad20f
Termux:Boot integration
Assistant: Integrate with Termux:Boot, so when it's installed, the
assistant is autostarted on boot.

This commit was sponsored by Boyd Stephen Smith Jr. on Patreon.
2018-04-25 15:31:25 -04:00
Joey Hess
aa652a4933
link to daily arm autobuild for now 2018-04-25 13:52:12 -04:00
Joey Hess
118ed8f92b
runshell: hacks for termux; add tip
Added some tweaks to make git-annex work in termux on Android. The regular
arm standalone tarball now works in termux.

I guess the test for "$base/bin/git" is not really necessary, since it
tests for git-annex. Since that gets deleted on android, removed that test.

These are pretty hackish hacks, especially adding it to PATH. The goal is
to make it work well enough out of the box on Android.

This commit was sponsored by Eric Drechsel on Patreon.
2018-04-25 13:48:37 -04:00
edward@6e8aa3b16ceac4d960301e049af99698fea47eea
491c3aa4ab Revert my change, not a typo. 2018-04-11 13:47:42 +00:00
edward@6e8aa3b16ceac4d960301e049af99698fea47eea
729436c3ce fix typo 2018-04-11 13:46:08 +00:00
itn@23fdfea9e5c13d8bb24e4cbde30d2a98293154c1
1afd507600 Added a comment: Cloning and syncing leads to confusing "gcrypt: Failed to decrypt manifest!" errors. 2018-04-08 00:50:15 +00:00
svw
f96de42138 2018-04-06 06:51:36 +00:00
Joey Hess
e32d2624ce
response 2018-03-21 15:58:27 -04:00
Joey Hess
f709a7ab00
add pointer to newer special remote 2018-03-21 15:53:34 -04:00
hobbes@b2cacef69071743c3a831e60511062f7e014e52f
336569a995 Added a comment: Youtube-dl options per file? 2018-03-08 18:47:57 +00:00
davicastro
2a67c125e1 Added a comment: Adopting "git annex add" as default command in workflow 2018-03-08 11:21:55 +00:00
andrew
08abdbd38c 2018-03-07 23:17:54 +00:00
Joey Hess
b1c0e44c33
remove spam
This is how you get banned, get your IP block banned.
2018-02-27 11:27:19 -04:00
marjor
940f324f85 removed 2018-02-27 10:07:54 +00:00
marjor
d72281df79 Added a comment 2018-02-27 10:07:32 +00:00
marjor
3a83e73e9f 2018-02-27 10:05:32 +00:00
Joey Hess
42f154bd7e
Fix metadata hook script to support non-ascii characters
tips/automatically_adding_metadata/pre-commit-annex: Fix to not silently
skip filenames containing non-ascii characters.

git diff-index defaults to munging non-ascii characters. Using -z makes
it not do that, and then we just change the nulls to newlines.

This commit was sponsored by Jochen Bartl on Patreon.
2018-02-26 12:58:37 -04:00
git-annex@6f13b739194f758abc0b86556b7ce966c1bf3c00
c0a5663f7e removed 2018-01-17 18:50:50 +00:00
git-annex@6f13b739194f758abc0b86556b7ce966c1bf3c00
a9f76e0267 Added a comment: vimeo 2018-01-17 18:22:43 +00:00
Joey Hess
cce732ad83
document youtube channels, not playlists
The feeds for playlists seem pretty broken, since they have the oldest
items first and are truncated, so after a few dozen items, new items
never appear on them. Channel feeds don't currently have this breakage
(although perhaps Google will find a way to break them eventually..)
2018-01-04 13:44:05 -04:00
Joey Hess
6b45e1d5c2
followup 2017-12-11 14:27:33 -04:00
woffs
d141b9cdeb Added a comment: hook and quoting 2017-12-09 11:18:10 +00:00
Joey Hess
d6d8f72957
documentation update for youtube-dl
Code not updated yet.

This commit was sponsored by Thomas Hochstein on Patreon.
2017-11-28 14:05:58 -04:00
Joey Hess
8f41a1b7ce
update youtube playlist docs 2017-11-28 13:30:05 -04:00
spam@9590d16798fd27f4e38472862e296fc9828e3d39
c758a63ab3 Added a comment: remote "origin" missing some gcrypt commands? 2017-11-11 19:51:57 +00:00
Lykos153
b0634d2151 Added a comment 2017-11-09 17:35:14 +00:00
Joey Hess
8ae5f278dc
reorder 2017-11-09 12:16:52 -04:00
Joey Hess
0f40333a55
Merge branch 'master' of ssh://git-annex.branchable.com 2017-11-09 12:16:39 -04:00
Joey Hess
94923ea143
response 2017-11-09 12:16:24 -04:00
Lykos153
f187a8db64 removed 2017-11-09 02:16:06 +00:00
Lykos153
2dad469a79 removed 2017-11-09 02:15:53 +00:00