Commit graph

40160 commits

Author SHA1 Message Date
Joey Hess
a58c90ccf4
skeleton of filter-branch command, with option parser 2021-05-14 10:59:48 -04:00
Joey Hess
5004eed27d
branch 2021-05-13 16:18:35 -04:00
Joey Hess
a71c002ac1
git-annex-filter-branch man page 2021-05-13 16:17:45 -04:00
Joey Hess
715d3d728c
new name for command 2021-05-13 16:07:30 -04:00
Joey Hess
40ade7a515
add some functions listing log files
Not used yet, will be used by copy-branch to generate the list of files
to copy.
2021-05-13 14:57:38 -04:00
Joey Hess
4ff8a1ae2b
refactoring
filterBranch should be reusable for copy-branch command.

Changed LogVariety to differentiate between LocationLog and UrlLog;
only location logs contain uuids and need to be filtered by uuid,
while url logs do not. This does not change current behavior,
but it will let filterBranch be reused without filtering url logs
incorrectly.
2021-05-13 14:43:25 -04:00
Joey Hess
13a8706cda
almost have a plan 2021-05-13 14:09:06 -04:00
Joey Hess
10af498be1
add configLog to otherLogs
This oversight didn't cause any problems because the only place that
uses the information is dropDead, which handles Nothing the same as Just
OtherLog.
2021-05-13 12:48:56 -04:00
Joey Hess
03f46b95e6
comment 2021-05-13 12:05:24 -04:00
Joey Hess
d960d72b9d
Merge branch 'master' of ssh://git-annex.branchable.com 2021-05-13 11:51:31 -04:00
Atemu
d8ed6daeb3 Added a comment 2021-05-13 10:26:53 +00:00
Joey Hess
4de3351c5c
set cwd rarher than changing current process directory
This is not actually used in git-annex though.
2021-05-12 17:44:22 -04:00
Joey Hess
6eadcab5bf
Merge branch 'master' of ssh://git-annex.branchable.com 2021-05-12 15:09:35 -04:00
Joey Hess
947d2a10bc
assistant: Fix a crash on startup by avoiding using forkProcess
ghc 8.8.4 seems to have changed something that broke code that has been
successfully using forkProcess since 2012. Likely a change to GC internals.

Since forkProcess has never had clear documentation about how to
use it safely, avoid using it at all. Instead, when git-annex needs to
daemonize itself, re-run the git-annex command, in a new process group
and session.

This commit was sponsored by Luke Shumaker on Patreon.
2021-05-12 15:08:03 -04:00
Joey Hess
ba7598dbab
comment 2021-05-12 13:39:15 -04:00
https://esgf-node.llnl.gov/esgf-idp/openid/tom_clune
f64937d118 removed 2021-05-12 16:44:38 +00:00
https://esgf-node.llnl.gov/esgf-idp/openid/tom_clune
db317f148f Added a comment 2021-05-12 16:41:27 +00:00
https://esgf-node.llnl.gov/esgf-idp/openid/tom_clune
9df64128b3 Added a comment 2021-05-12 16:41:07 +00:00
Joey Hess
7500ba7ceb
already implemented 2021-05-12 12:24:55 -04:00
Joey Hess
a0225ff41c
comment 2021-05-12 12:22:17 -04:00
Joey Hess
ea325f41ea
comment 2021-05-12 11:38:35 -04:00
Joey Hess
7e2fda5307
comment 2021-05-12 11:37:36 -04:00
Joey Hess
afdc201d1c
comment 2021-05-12 11:24:55 -04:00
Joey Hess
7949cfe318
Merge branch 'master' of ssh://git-annex.branchable.com 2021-05-12 11:13:00 -04:00
Joey Hess
949627b902
remove inode cache in unannex
Similar to what commit 675556fd9a did for
adding a non-annexed file, this prevents the smudge clean filter
recognising the inode if git add is later run on the unannexed file.
2021-05-12 11:09:38 -04:00
Atemu
9e8e747654 Added a comment 2021-05-12 14:17:06 +00:00
Lukey
20af8b311a 2021-05-11 11:22:31 +00:00
Lukey
27b98f6f0d Added a comment 2021-05-11 10:28:12 +00:00
Lukey
add38774d1 Added a comment 2021-05-11 09:21:38 +00:00
Lukey
61a3a7e0c3 Added a comment 2021-05-11 08:50:36 +00:00
Lukey
810fe88d5a Added a comment 2021-05-11 08:41:42 +00:00
Lukey
06e167291d Added a comment 2021-05-11 07:37:08 +00:00
Joey Hess
8dbbbc7250
idea 2021-05-10 19:16:15 -04:00
erics
a890c7e3d0 Added a comment 2021-05-10 22:06:02 +00:00
erics
f1509f920d Added a comment: D'oh! 2021-05-10 21:26:25 +00:00
Joey Hess
ed5fd5b841
mention index mode explicitly 2021-05-10 15:21:23 -04:00
Joey Hess
54f5afef1f
Merge branch 'master' of ssh://git-annex.branchable.com 2021-05-10 15:20:08 -04:00
Joey Hess
c12799b101
comment 2021-05-10 15:12:59 -04:00
kyle
728d8d8aab Added a comment 2021-05-10 19:05:58 +00:00
Joey Hess
2f88d99a94
Merge branch 'master' of ssh://git-annex.branchable.com 2021-05-10 15:02:31 -04:00
Joey Hess
b184fc490a
split out common options to its own page and mention it on each subcommand page
Sometimes users would get confused because an option they were looking
for was not mentioned on a subcommand's man page, and they had not
noticed that the main git-annex man page had a list of common options.
This change lets each subcommand mention the common options, similarly
to how the matching options are handled.

This commit was sponsored by Svenne Krap on Patreon.
2021-05-10 15:00:13 -04:00
Joey Hess
8ab04788ef
comment 2021-05-10 14:43:37 -04:00
Joey Hess
8e756a6ec0
add test cases for git/annexed conversions
Make sure that tip keeps working.

I tried to go futher and touch the file and make sure it stayed what it
was converted to, but struggled with some weird and not entirely
reproducable behavior, so kept the tests simple for now.
2021-05-10 14:29:57 -04:00
erics
7592abcd5e 2021-05-10 17:58:51 +00:00
Joey Hess
675556fd9a
smudge: check for known annexed inodes before checking annex.largefiles
smudge: Fix a case where an unlocked annexed file that annex.largefiles
does not match could get its unchanged content checked into git, due to git
running the smudge filter unecessarily.

When the file has the same inodecache as an already annexed file,
we can assume that the user is not intending to change how it's stored in
git.

Note that checkunchangedgitfile already handled the inverse case, where the
file was added to git previously. That goes further and actually sha1
hashes the new file and checks if it's the same hash in the index.

It would be possible to generate a key for the file and see if it's the
same as the old key, however that could be considerably more expensive than
sha1 of a small file is, and it is not necessary for the case I have, at
least, where the file is not modified or touched, and so its inode will
match the cache.

git-annex add was changed, when adding a small file, to remove the inode
cache for it. This is necessary to keep the recipe in
doc/tips/largefiles.mdwn for converting from annex to git working.
It also avoids bugs/case_where_using_pathspec_with_git-commit_leaves_s.mdwn
which the earlier try at this change introduced.
2021-05-10 13:20:10 -04:00
Joey Hess
c60b66d442
comment 2021-05-10 12:44:53 -04:00
Joey Hess
dc412c6d75
comment 2021-05-10 12:42:56 -04:00
Joey Hess
72a8bbce12
Revert "smudge: check for known annexed inodes before checking annex.largefiles"
This reverts commit 424bef6b6f.

This commit caused other buggy behavior unfortunately.
2021-05-10 12:20:13 -04:00
Joey Hess
56ccc0302e
mention --all on fsck man page, and repurpose todo 2021-05-10 11:11:50 -04:00
Joey Hess
c88fdd91f9
comment and close 2021-05-10 11:04:50 -04:00